diff --git a/.github/workflows/test-build-number.yml b/.github/workflows/test-build-number.yml
index 833e375e..42c2689b 100644
--- a/.github/workflows/test-build-number.yml
+++ b/.github/workflows/test-build-number.yml
@@ -127,6 +127,8 @@ jobs:
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: ./config-npm
+ with:
+ repox-url: https://repox.jfrog.io
- uses: jdx/mise-action@e6a8b3978addb5a52f2b4cd9d91eafa7f0ab959d # v4.2.0
with:
version: 2026.6.14
diff --git a/.github/workflows/test-shell-scripts.yml b/.github/workflows/test-shell-scripts.yml
index c888f1e8..dda6405a 100644
--- a/.github/workflows/test-shell-scripts.yml
+++ b/.github/workflows/test-shell-scripts.yml
@@ -20,6 +20,8 @@ jobs:
with:
fetch-depth: 0
- uses: ./config-npm
+ with:
+ repox-url: https://repox.jfrog.io
- uses: jdx/mise-action@e6a8b3978addb5a52f2b4cd9d91eafa7f0ab959d # v4.2.0
with:
version: 2026.6.14
diff --git a/.github/workflows/test-update-release-channel.yml b/.github/workflows/test-update-release-channel.yml
index 3dbb2bfb..d93f88c1 100644
--- a/.github/workflows/test-update-release-channel.yml
+++ b/.github/workflows/test-update-release-channel.yml
@@ -32,6 +32,8 @@ jobs:
[[ "${{ steps.urc.outputs.version-url }}" == "https://binaries.sonarsource.com/Distribution/test-fixture/stable.version" ]]
[[ "${{ steps.urc.outputs.version }}" == "0.0.0-test" ]]
- uses: ./config-npm
+ with:
+ repox-url: https://repox.jfrog.io
- uses: jdx/mise-action@e6a8b3978addb5a52f2b4cd9d91eafa7f0ab959d # v4.2.0
with:
version: 2026.6.14
diff --git a/README.md b/README.md
index abcb2188..285bc60b 100644
--- a/README.md
+++ b/README.md
@@ -69,13 +69,19 @@ These badges show the status of workflows in dummy repositories that use (or sho
## Resolving through the JFrog Edge
-The actions resolve, deploy and promote on SaaS Repox (`https://repox.jfrog.io`) by default. To resolve dependencies through
-the JFrog Edge instead, set `repox-url: https://repox-internal.dev.sonar.build` on the `config-*` and `build-*` actions.
+The `config-*` and `build-*` actions with a `repox-url` input resolve dependencies through the production JFrog Edge
+(`https://repox-internal.sonar.build`) by default. Set `repox-url: https://repox.jfrog.io` to resolve through SaaS Repox
+or `repox-url: https://repox-internal.dev.sonar.build` for the dev Edge.
- Deployment, publication, build info and promotion always use `https://repox.jfrog.io`: the Edge is read-only.
-- With the Edge, the resolve token is issued by the Edge through `development/artifactory-edge-dev` on
- `https://vault.dev.sonar.build`. Otherwise it comes from `development/artifactory` on `https://vault.sonar.build`.
-- `repox-internal.dev.sonar.build` is only reachable from runners inside the SonarSource network.
+- Resolve credentials always come from production Vault (`https://vault.sonar.build`). SaaS uses
+ `development/artifactory`; dev Edge uses `development/artifactory-edge-dev`; production Edge uses
+ `development/artifactory-edge-prod`. Edge reader tokens are issued directly by the corresponding Edge.
+- The internal Edge hostnames are only reachable from runners inside the SonarSource network. Their public aliases
+ `repox.dev.sonar.build` and `repox.sonar.build` select the same dev and production engines, respectively.
+- Before adopting these actions for either Edge, its production Vault engine must be seeded and configured.
+ Keep older action versions on dev Vault until migration completes. To return resolution to SaaS, set
+ `repox-url: https://repox.jfrog.io`.
---
@@ -267,7 +273,7 @@ steps:
| `working-directory` | Relative path under github.workspace to execute the build in | `.` |
| `artifactory-reader-role` | Suffix for the Artifactory reader role in Vault | `private-reader` for private repos, `public-reader` for public repos |
| `common-mvn-flags` | Maven flags for all subsequent mvn calls | `--batch-mode --no-transfer-progress --errors --fail-at-end --show-version -Dmaven.test.redirectTestOutputToFile=false` |
-| `repox-url` | URL for Repox | `https://repox.jfrog.io` |
+| `repox-url` | URL for Repox | `https://repox-internal.sonar.build` |
| `use-develocity` | Whether to use Develocity for build tracking | `false` |
| `develocity-url` | URL for Develocity | `https://develocity.sonar.build/` |
| `cache-paths` | Custom cache paths (multiline). | (optional) |
@@ -373,7 +379,7 @@ See also [`config-maven`](#config-maven) input environment variables.
| `skip-build` | If `true`, analyze existing `target/` output without compiling, testing or deploying. Requires `deploy: false`. | `false` |
| `maven-args` | Additional arguments to pass to Maven | (optional) |
| `scanner-java-opts` | Additional Java options for the Sonar scanner (`SONAR_SCANNER_JAVA_OPTS`) | `-Xmx512m` |
-| `repox-url` | URL for Repox | `https://repox.jfrog.io` |
+| `repox-url` | URL for Repox | `https://repox-internal.sonar.build` |
| `use-develocity` | Whether to use Develocity for build tracking | `false` |
| `develocity-url` | URL for Develocity | `https://develocity.sonar.build/` |
| `sonar-platform` | SonarQube primary platform - 'next', 'sqc-eu', 'sqc-us', or 'none'. Use 'none' to skip sonar scans | `next` |
@@ -515,7 +521,7 @@ See also [`get-build-number`](#get-build-number) input environment variables.
| `working-directory` | Relative path under github.workspace to execute the build in | `.` |
| `artifactory-reader-role` | Suffix for the Artifactory reader role in Vault | `private-reader` for private repos, `public-reader` for public repos |
| `artifactory-pypi-repo` | PyPI virtual repository to resolve dependencies from | `sonarsource-pypi` |
-| `repox-url` | URL for Repox | `https://repox.jfrog.io` |
+| `repox-url` | URL for Repox | `https://repox-internal.sonar.build` |
| `poetry-virtualenvs-path` | Path to the Poetry virtual environments, relative to GitHub workspace | `.cache/pypoetry/virtualenvs` |
| `poetry-cache-dir` | Path to the Poetry cache directory, relative to GitHub workspace | `.cache/pypoetry` |
| `disable-caching` | Whether to disable Poetry caching entirely | `false` |
@@ -617,7 +623,7 @@ See also [`config-poetry`](#config-poetry) input environment variables.
| `deploy-pull-request` | Whether to also deploy pull request artifacts. If `deploy` is `false`, this has no effect | `false` |
| `poetry-virtualenvs-path` | Path to the Poetry virtual environments, relative to GitHub workspace | `.cache/pypoetry/virtualenvs` |
| `poetry-cache-dir` | Path to the Poetry cache directory, relative to GitHub workspace | `.cache/pypoetry` |
-| `repox-url` | URL for Repox | `https://repox.jfrog.io` |
+| `repox-url` | URL for Repox | `https://repox-internal.sonar.build` |
| `sonar-platform` | SonarQube primary platform - 'next', 'sqc-eu', sqc-us, or 'none'. Use 'none' to skip sonar scans | `next` |
| `run-shadow-scans` | If true, run sonar scanner on all 3 platforms using the provided URL and token. If false, run on the platform provided by sonar-platform. When enabled, the sonar-platform setting is ignored | `false` |
| `working-directory` | Relative path under github.workspace to execute the build in | `.` |
@@ -729,7 +735,7 @@ If provided, `SONARSOURCE_REPOSITORY` is used at runtime by the Gradle init scri
| `artifactory-reader-role` | Suffix for the Artifactory reader role in Vault | `private-reader` for private repos, `public-reader` for public repos |
| `use-develocity` | Whether to use Develocity for build tracking | `false` |
| `develocity-url` | URL for Develocity | `https://develocity.sonar.build/` |
-| `repox-url` | URL for Repox | `https://repox.jfrog.io` |
+| `repox-url` | URL for Repox | `https://repox-internal.sonar.build` |
| `cache-paths` | Custom cache paths (multiline). | `~/.gradle/caches`
`~/.gradle/wrapper` |
| `disable-caching` | Whether to disable Gradle caching entirely | `false` |
@@ -852,7 +858,7 @@ See also [`config-gradle`](#config-gradle) input environment variables.
| `use-develocity` | Whether to use Develocity for build tracking | `false` |
| `gradle-args` | Additional arguments to pass to Gradle | (optional) |
| `develocity-url` | URL for Develocity | `https://develocity.sonar.build/` |
-| `repox-url` | URL for Repox | `https://repox.jfrog.io` |
+| `repox-url` | URL for Repox | `https://repox-internal.sonar.build` |
| `sonar-platform` | SonarQube variant - 'next', 'sqc-eu', 'sqc-us', or 'none'. Use 'none' to skip sonar scans | `next` |
| `working-directory` | Relative path under github.workspace to execute the build in | `.` |
| `run-shadow-scans` | Enable analysis across all 3 SonarQube platforms (unified platform dogfooding) | `false` |
@@ -1051,7 +1057,7 @@ See also [`get-build-number`](#get-build-number) input environment variables.
| `artifactory-reader-role` | Suffix for the Artifactory reader role in Vault | `private-reader` for private repos, `public-reader` for public repos |
| `disable-caching` | Whether to disable NPM caching entirely | `false` |
| `cache-npm` | Deprecated. Use `disable-caching: 'true'` instead | `true` |
-| `repox-url` | URL for Repox | `https://repox.jfrog.io` |
+| `repox-url` | URL for Repox | `https://repox-internal.sonar.build` |
### Outputs
@@ -1144,7 +1150,7 @@ See also [`config-npm`](#config-npm) input environment variables.
| `skip-tests` | Whether to skip running tests | `false` |
| `disable-caching` | Whether to disable NPM caching entirely | `false` |
| `cache-npm` | Deprecated. Use `disable-caching: 'true'` instead | `true` |
-| `repox-url` | URL for Repox | `https://repox.jfrog.io` |
+| `repox-url` | URL for Repox | `https://repox-internal.sonar.build` |
| `sonar-platform` | SonarQube primary platform - 'next', 'sqc-eu', or 'sqc-us' | `next` |
| `run-shadow-scans` | Enable analysis across all 3 SonarQube platforms (unified platform dogfooding) | `false` |
| `build-name` | Name of the JFrog build to publish. | `` |
@@ -1256,7 +1262,7 @@ jobs:
| `skip-tests` | Whether to skip running tests | `false` |
| `disable-caching` | Whether to disable Yarn caching entirely | `false` |
| `cache-yarn` | Deprecated. Use `disable-caching: 'true'` instead | `true` |
-| `repox-url` | URL for Repox | `https://repox.jfrog.io` |
+| `repox-url` | URL for Repox | `https://repox-internal.sonar.build` |
| `sonar-platform` | SonarQube primary platform - 'next', 'sqc-eu', 'sqc-us', or 'none'. Use 'none' to skip sonar scans | `next` |
| `run-shadow-scans` | Enable analysis across all 3 SonarQube platforms (unified platform dogfooding) | `false` |
| `provenance` | Whether to generate provenance attestation for built artifacts | `false` |
@@ -1339,7 +1345,7 @@ steps:
|---------------------------|-----------------------------------------------------------------------------|----------------------------------------------------------------------|
| `working-directory` | Relative path under github.workspace to execute the build in | `.` |
| `artifactory-reader-role` | Suffix for the Artifactory reader role in Vault | `private-reader` for private repos, `public-reader` for public repos |
-| `repox-url` | URL for Repox | `https://repox.jfrog.io` |
+| `repox-url` | URL for Repox | `https://repox-internal.sonar.build` |
| `cache-paths` | Cache paths to use (multiline) | `~/.cache/pip` |
| `disable-caching` | Whether to disable pip caching entirely | `false` |
@@ -1441,7 +1447,7 @@ For build-info collection, pass `--build-name` and `--build-number` to `jf uv` a
| `working-directory` | Relative path under github.workspace to execute the build in | `.` |
| `artifactory-reader-role` | Suffix for the Artifactory reader role in Vault | `private-reader` for private repos, `public-reader` for public repos |
| `uv-index-name` | Name of the uv index in `pyproject.toml` to authenticate | `repox` |
-| `repox-url` | URL for Repox | `https://repox.jfrog.io` |
+| `repox-url` | URL for Repox | `https://repox-internal.sonar.build` |
| `uv-cache-dir` | Path to the uv cache directory, relative to GitHub workspace | `.cache/uv` |
| `disable-caching` | Whether to disable uv caching entirely | `false` |
@@ -1516,7 +1522,7 @@ steps:
| `nuget-config-files` | NuGet configuration files to update (multiline), relative to `working-directory` | `NuGet.Config` |
| `working-directory` | Relative path under github.workspace to execute the action in | `.` |
| `artifactory-reader-role` | Suffix for the Artifactory reader role in Vault | `private-reader` for private repos, `public-reader` for public repos |
-| `repox-url` | URL for Repox | `https://repox.jfrog.io` |
+| `repox-url` | URL for Repox | `https://repox-internal.sonar.build` |
### Output Environment Variables
diff --git a/build-gradle/action.yml b/build-gradle/action.yml
index 0ebd6745..6da73354 100644
--- a/build-gradle/action.yml
+++ b/build-gradle/action.yml
@@ -45,8 +45,9 @@ inputs:
for public repositories.
default: ''
repox-url:
- description: URL for Repox used to resolve dependencies. Use https://repox-internal.dev.sonar.build for the JFrog Edge.
- default: https://repox.jfrog.io
+ description: URL for Repox used to resolve dependencies. Defaults to the production JFrog Edge.
+ Use https://repox.jfrog.io for SaaS or https://repox-internal.dev.sonar.build for the dev Edge.
+ default: https://repox-internal.sonar.build
use-develocity:
description: Whether to use Develocity for build tracking.
default: 'false'
diff --git a/build-maven/action.yml b/build-maven/action.yml
index 3734dbad..bb909a6f 100644
--- a/build-maven/action.yml
+++ b/build-maven/action.yml
@@ -55,8 +55,9 @@ inputs:
description: Maven flags for all subsequent mvn calls
default: --batch-mode --no-transfer-progress --errors --fail-at-end --show-version -Dmaven.test.redirectTestOutputToFile=false
repox-url:
- description: URL for Repox used to resolve dependencies. Use https://repox-internal.dev.sonar.build for the JFrog Edge.
- default: https://repox.jfrog.io
+ description: URL for Repox used to resolve dependencies. Defaults to the production JFrog Edge.
+ Use https://repox.jfrog.io for SaaS or https://repox-internal.dev.sonar.build for the dev Edge.
+ default: https://repox-internal.sonar.build
use-develocity:
description: Whether to use Develocity for build tracking.
default: 'false'
diff --git a/build-npm/action.yml b/build-npm/action.yml
index 9b660b77..a68e708f 100644
--- a/build-npm/action.yml
+++ b/build-npm/action.yml
@@ -33,8 +33,9 @@ inputs:
description: Deprecated. Use `disable-caching` instead. Whether to cache NPM dependencies.
default: 'true'
repox-url:
- description: URL for Repox used to resolve dependencies. Use https://repox-internal.dev.sonar.build for the JFrog Edge.
- default: https://repox.jfrog.io
+ description: URL for Repox used to resolve dependencies. Defaults to the production JFrog Edge.
+ Use https://repox.jfrog.io for SaaS or https://repox-internal.dev.sonar.build for the dev Edge.
+ default: https://repox-internal.sonar.build
sonar-platform:
description: SonarQube primary platform (next, sqc-eu, sqc-us, or none). Use 'none' to skip sonar scans.
default: next
diff --git a/build-poetry/action.yml b/build-poetry/action.yml
index 28a0c189..ebf2f20d 100644
--- a/build-poetry/action.yml
+++ b/build-poetry/action.yml
@@ -31,8 +31,9 @@ inputs:
description: Path to the Poetry cache directory, relative to GitHub workspace.
default: .cache/pypoetry
repox-url:
- description: URL for Repox used to resolve dependencies. Use https://repox-internal.dev.sonar.build for the JFrog Edge.
- default: https://repox.jfrog.io
+ description: URL for Repox used to resolve dependencies. Defaults to the production JFrog Edge.
+ Use https://repox.jfrog.io for SaaS or https://repox-internal.dev.sonar.build for the dev Edge.
+ default: https://repox-internal.sonar.build
sonar-platform:
description: SonarQube primary platform (next, sqc-eu, sqc-us, or none). Use 'none' to skip sonar scans.
default: next
diff --git a/build-yarn/action.yml b/build-yarn/action.yml
index 5a9aaeca..b12575d2 100644
--- a/build-yarn/action.yml
+++ b/build-yarn/action.yml
@@ -36,8 +36,9 @@ inputs:
description: Deprecated. Use `disable-caching` instead. Whether to cache Yarn dependencies.
default: 'true'
repox-url:
- description: URL for Repox used to resolve dependencies. Use https://repox-internal.dev.sonar.build for the JFrog Edge.
- default: https://repox.jfrog.io
+ description: URL for Repox used to resolve dependencies. Defaults to the production JFrog Edge.
+ Use https://repox.jfrog.io for SaaS or https://repox-internal.dev.sonar.build for the dev Edge.
+ default: https://repox-internal.sonar.build
sonar-platform:
description: SonarQube primary platform (next, sqc-eu, sqc-us, or none). Use 'none' to skip sonar scans.
default: next
@@ -133,10 +134,10 @@ runs:
id: artifactory
with:
# yamllint disable rule:line-length
- url: ${{ contains(inputs.repox-url, 'jfrog.io') && 'https://vault.sonar.build' || 'https://vault.dev.sonar.build' }}
+ url: https://vault.sonar.build
secrets: |
- development/${{ contains(inputs.repox-url, 'jfrog.io') && 'artifactory' || 'artifactory-edge-dev' }}/token/{REPO_OWNER_NAME_DASH}-${{ env.ARTIFACTORY_READER_ROLE }} username | ARTIFACTORY_USERNAME;
- development/${{ contains(inputs.repox-url, 'jfrog.io') && 'artifactory' || 'artifactory-edge-dev' }}/token/{REPO_OWNER_NAME_DASH}-${{ env.ARTIFACTORY_READER_ROLE }} access_token | ARTIFACTORY_ACCESS_TOKEN;
+ development/${{ contains(inputs.repox-url, 'jfrog.io') && 'artifactory' || (contains(inputs.repox-url, '.dev.sonar.build') && 'artifactory-edge-dev' || 'artifactory-edge-prod') }}/token/{REPO_OWNER_NAME_DASH}-${{ env.ARTIFACTORY_READER_ROLE }} username | ARTIFACTORY_USERNAME;
+ development/${{ contains(inputs.repox-url, 'jfrog.io') && 'artifactory' || (contains(inputs.repox-url, '.dev.sonar.build') && 'artifactory-edge-dev' || 'artifactory-edge-prod') }}/token/{REPO_OWNER_NAME_DASH}-${{ env.ARTIFACTORY_READER_ROLE }} access_token | ARTIFACTORY_ACCESS_TOKEN;
# yamllint enable rule:line-length
- uses: SonarSource/vault-action-wrapper@881045d830534a70ec3c7c275fa3714412c8ff6e # 3.6.1
if: inputs.deploy != 'false' && inputs.run-shadow-scans != 'true'
diff --git a/config-gradle/action.yml b/config-gradle/action.yml
index 830d4d5d..0c5dd5c0 100644
--- a/config-gradle/action.yml
+++ b/config-gradle/action.yml
@@ -10,8 +10,9 @@ inputs:
and `public-reader` for public repositories.
default: ''
repox-url:
- description: URL for Repox used to resolve dependencies. Use https://repox-internal.dev.sonar.build for the JFrog Edge.
- default: https://repox.jfrog.io
+ description: URL for Repox used to resolve dependencies. Defaults to the production JFrog Edge.
+ Use https://repox.jfrog.io for SaaS or https://repox-internal.dev.sonar.build for the dev Edge.
+ default: https://repox-internal.sonar.build
use-develocity:
description: Whether to use Develocity for build tracking.
default: 'false'
@@ -95,10 +96,10 @@ runs:
id: artifactory
with:
# yamllint disable rule:line-length
- url: ${{ contains(inputs.repox-url, 'jfrog.io') && 'https://vault.sonar.build' || 'https://vault.dev.sonar.build' }}
+ url: https://vault.sonar.build
secrets: |
- development/${{ contains(inputs.repox-url, 'jfrog.io') && 'artifactory' || 'artifactory-edge-dev' }}/token/{REPO_OWNER_NAME_DASH}-${{ env.ARTIFACTORY_READER_ROLE }} username | ARTIFACTORY_USERNAME;
- development/${{ contains(inputs.repox-url, 'jfrog.io') && 'artifactory' || 'artifactory-edge-dev' }}/token/{REPO_OWNER_NAME_DASH}-${{ env.ARTIFACTORY_READER_ROLE }} access_token | ARTIFACTORY_ACCESS_TOKEN;
+ development/${{ contains(inputs.repox-url, 'jfrog.io') && 'artifactory' || (contains(inputs.repox-url, '.dev.sonar.build') && 'artifactory-edge-dev' || 'artifactory-edge-prod') }}/token/{REPO_OWNER_NAME_DASH}-${{ env.ARTIFACTORY_READER_ROLE }} username | ARTIFACTORY_USERNAME;
+ development/${{ contains(inputs.repox-url, 'jfrog.io') && 'artifactory' || (contains(inputs.repox-url, '.dev.sonar.build') && 'artifactory-edge-dev' || 'artifactory-edge-prod') }}/token/{REPO_OWNER_NAME_DASH}-${{ env.ARTIFACTORY_READER_ROLE }} access_token | ARTIFACTORY_ACCESS_TOKEN;
# yamllint enable rule:line-length
- uses: SonarSource/vault-action-wrapper@881045d830534a70ec3c7c275fa3714412c8ff6e # 3.6.1
if: steps.config-gradle-completed.outputs.skip != 'true' && inputs.use-develocity == 'true'
diff --git a/config-maven/action.yml b/config-maven/action.yml
index 72e146eb..fda3c13d 100644
--- a/config-maven/action.yml
+++ b/config-maven/action.yml
@@ -13,8 +13,9 @@ inputs:
description: Maven flags for all subsequent mvn calls
default: --batch-mode --no-transfer-progress --errors --fail-at-end --show-version -Dmaven.test.redirectTestOutputToFile=false
repox-url:
- description: URL for Repox used to resolve dependencies. Use https://repox-internal.dev.sonar.build for the JFrog Edge.
- default: https://repox.jfrog.io
+ description: URL for Repox used to resolve dependencies. Defaults to the production JFrog Edge.
+ Use https://repox.jfrog.io for SaaS or https://repox-internal.dev.sonar.build for the dev Edge.
+ default: https://repox-internal.sonar.build
use-develocity:
description: Whether to use Develocity for build tracking.
default: 'false'
@@ -96,10 +97,10 @@ runs:
id: artifactory
with:
# yamllint disable rule:line-length
- url: ${{ contains(inputs.repox-url, 'jfrog.io') && 'https://vault.sonar.build' || 'https://vault.dev.sonar.build' }}
+ url: https://vault.sonar.build
secrets: |
- development/${{ contains(inputs.repox-url, 'jfrog.io') && 'artifactory' || 'artifactory-edge-dev' }}/token/{REPO_OWNER_NAME_DASH}-${{ env.ARTIFACTORY_READER_ROLE }} username | ARTIFACTORY_USERNAME;
- development/${{ contains(inputs.repox-url, 'jfrog.io') && 'artifactory' || 'artifactory-edge-dev' }}/token/{REPO_OWNER_NAME_DASH}-${{ env.ARTIFACTORY_READER_ROLE }} access_token | ARTIFACTORY_ACCESS_TOKEN;
+ development/${{ contains(inputs.repox-url, 'jfrog.io') && 'artifactory' || (contains(inputs.repox-url, '.dev.sonar.build') && 'artifactory-edge-dev' || 'artifactory-edge-prod') }}/token/{REPO_OWNER_NAME_DASH}-${{ env.ARTIFACTORY_READER_ROLE }} username | ARTIFACTORY_USERNAME;
+ development/${{ contains(inputs.repox-url, 'jfrog.io') && 'artifactory' || (contains(inputs.repox-url, '.dev.sonar.build') && 'artifactory-edge-dev' || 'artifactory-edge-prod') }}/token/{REPO_OWNER_NAME_DASH}-${{ env.ARTIFACTORY_READER_ROLE }} access_token | ARTIFACTORY_ACCESS_TOKEN;
# yamllint enable rule:line-length
- uses: SonarSource/vault-action-wrapper@881045d830534a70ec3c7c275fa3714412c8ff6e # 3.6.1
if: steps.config-maven-completed.outputs.skip != 'true' && inputs.use-develocity == 'true'
diff --git a/config-npm/action.yml b/config-npm/action.yml
index 4e8c6bbb..167c0728 100644
--- a/config-npm/action.yml
+++ b/config-npm/action.yml
@@ -16,8 +16,9 @@ inputs:
description: Deprecated. Use `disable-caching` instead. Whether to cache NPM dependencies.
default: 'true'
repox-url:
- description: URL for Repox used to resolve dependencies. Use https://repox-internal.dev.sonar.build for the JFrog Edge.
- default: https://repox.jfrog.io
+ description: URL for Repox used to resolve dependencies. Defaults to the production JFrog Edge.
+ Use https://repox.jfrog.io for SaaS or https://repox-internal.dev.sonar.build for the dev Edge.
+ default: https://repox-internal.sonar.build
host-actions-root:
description: Path to the actions folder on the host (used when called from another local action)
default: ''
@@ -94,10 +95,10 @@ runs:
id: secrets
with:
# yamllint disable rule:line-length
- url: ${{ contains(inputs.repox-url, 'jfrog.io') && 'https://vault.sonar.build' || 'https://vault.dev.sonar.build' }}
+ url: https://vault.sonar.build
secrets: |
- development/${{ contains(inputs.repox-url, 'jfrog.io') && 'artifactory' || 'artifactory-edge-dev' }}/token/{REPO_OWNER_NAME_DASH}-${{ env.ARTIFACTORY_READER_ROLE }} username | ARTIFACTORY_USERNAME;
- development/${{ contains(inputs.repox-url, 'jfrog.io') && 'artifactory' || 'artifactory-edge-dev' }}/token/{REPO_OWNER_NAME_DASH}-${{ env.ARTIFACTORY_READER_ROLE }} access_token | ARTIFACTORY_ACCESS_TOKEN;
+ development/${{ contains(inputs.repox-url, 'jfrog.io') && 'artifactory' || (contains(inputs.repox-url, '.dev.sonar.build') && 'artifactory-edge-dev' || 'artifactory-edge-prod') }}/token/{REPO_OWNER_NAME_DASH}-${{ env.ARTIFACTORY_READER_ROLE }} username | ARTIFACTORY_USERNAME;
+ development/${{ contains(inputs.repox-url, 'jfrog.io') && 'artifactory' || (contains(inputs.repox-url, '.dev.sonar.build') && 'artifactory-edge-dev' || 'artifactory-edge-prod') }}/token/{REPO_OWNER_NAME_DASH}-${{ env.ARTIFACTORY_READER_ROLE }} access_token | ARTIFACTORY_ACCESS_TOKEN;
# yamllint enable rule:line-length
- name: Configure NPM authentication
diff --git a/config-nuget/action.yml b/config-nuget/action.yml
index c6a215f8..25774ead 100644
--- a/config-nuget/action.yml
+++ b/config-nuget/action.yml
@@ -13,8 +13,9 @@ inputs:
for public repositories.
default: ''
repox-url:
- description: URL for Repox used to resolve dependencies. Use https://repox-internal.dev.sonar.build for the JFrog Edge.
- default: https://repox.jfrog.io
+ description: URL for Repox used to resolve dependencies. Defaults to the production JFrog Edge.
+ Use https://repox.jfrog.io for SaaS or https://repox-internal.dev.sonar.build for the dev Edge.
+ default: https://repox-internal.sonar.build
runs:
using: composite
@@ -30,10 +31,10 @@ runs:
id: secrets
with:
# yamllint disable rule:line-length
- url: ${{ contains(inputs.repox-url, 'jfrog.io') && 'https://vault.sonar.build' || 'https://vault.dev.sonar.build' }}
+ url: https://vault.sonar.build
secrets: |
- development/${{ contains(inputs.repox-url, 'jfrog.io') && 'artifactory' || 'artifactory-edge-dev' }}/token/{REPO_OWNER_NAME_DASH}-${{ env.ARTIFACTORY_READER_ROLE }} username | ARTIFACTORY_USERNAME;
- development/${{ contains(inputs.repox-url, 'jfrog.io') && 'artifactory' || 'artifactory-edge-dev' }}/token/{REPO_OWNER_NAME_DASH}-${{ env.ARTIFACTORY_READER_ROLE }} access_token | ARTIFACTORY_ACCESS_TOKEN;
+ development/${{ contains(inputs.repox-url, 'jfrog.io') && 'artifactory' || (contains(inputs.repox-url, '.dev.sonar.build') && 'artifactory-edge-dev' || 'artifactory-edge-prod') }}/token/{REPO_OWNER_NAME_DASH}-${{ env.ARTIFACTORY_READER_ROLE }} username | ARTIFACTORY_USERNAME;
+ development/${{ contains(inputs.repox-url, 'jfrog.io') && 'artifactory' || (contains(inputs.repox-url, '.dev.sonar.build') && 'artifactory-edge-dev' || 'artifactory-edge-prod') }}/token/{REPO_OWNER_NAME_DASH}-${{ env.ARTIFACTORY_READER_ROLE }} access_token | ARTIFACTORY_ACCESS_TOKEN;
# yamllint enable rule:line-length
- name: Configure NuGet
diff --git a/config-pip/action.yml b/config-pip/action.yml
index b39a903d..bb66496f 100644
--- a/config-pip/action.yml
+++ b/config-pip/action.yml
@@ -11,8 +11,9 @@ inputs:
for public repositories.
default: ''
repox-url:
- description: URL for Repox used to resolve dependencies. Use https://repox-internal.dev.sonar.build for the JFrog Edge.
- default: https://repox.jfrog.io
+ description: URL for Repox used to resolve dependencies. Defaults to the production JFrog Edge.
+ Use https://repox.jfrog.io for SaaS or https://repox-internal.dev.sonar.build for the dev Edge.
+ default: https://repox-internal.sonar.build
cache-paths:
description: Cache paths to use (multiline).
default: ~/.cache/pip
@@ -76,10 +77,10 @@ runs:
id: secrets
with:
# yamllint disable rule:line-length
- url: ${{ contains(inputs.repox-url, 'jfrog.io') && 'https://vault.sonar.build' || 'https://vault.dev.sonar.build' }}
+ url: https://vault.sonar.build
secrets: |
- development/${{ contains(inputs.repox-url, 'jfrog.io') && 'artifactory' || 'artifactory-edge-dev' }}/token/{REPO_OWNER_NAME_DASH}-${{ env.ARTIFACTORY_READER_ROLE }} username | ARTIFACTORY_USERNAME;
- development/${{ contains(inputs.repox-url, 'jfrog.io') && 'artifactory' || 'artifactory-edge-dev' }}/token/{REPO_OWNER_NAME_DASH}-${{ env.ARTIFACTORY_READER_ROLE }} access_token | ARTIFACTORY_ACCESS_TOKEN;
+ development/${{ contains(inputs.repox-url, 'jfrog.io') && 'artifactory' || (contains(inputs.repox-url, '.dev.sonar.build') && 'artifactory-edge-dev' || 'artifactory-edge-prod') }}/token/{REPO_OWNER_NAME_DASH}-${{ env.ARTIFACTORY_READER_ROLE }} username | ARTIFACTORY_USERNAME;
+ development/${{ contains(inputs.repox-url, 'jfrog.io') && 'artifactory' || (contains(inputs.repox-url, '.dev.sonar.build') && 'artifactory-edge-dev' || 'artifactory-edge-prod') }}/token/{REPO_OWNER_NAME_DASH}-${{ env.ARTIFACTORY_READER_ROLE }} access_token | ARTIFACTORY_ACCESS_TOKEN;
# yamllint enable rule:line-length
- name: Set environment variables for Artifactory authentication
diff --git a/config-poetry/action.yml b/config-poetry/action.yml
index a9c4e668..a7684aa8 100644
--- a/config-poetry/action.yml
+++ b/config-poetry/action.yml
@@ -13,8 +13,9 @@ inputs:
description: PyPI virtual repository to resolve dependencies from
default: sonarsource-pypi
repox-url:
- description: URL for Repox used to resolve dependencies. Use https://repox-internal.dev.sonar.build for the JFrog Edge.
- default: https://repox.jfrog.io
+ description: URL for Repox used to resolve dependencies. Defaults to the production JFrog Edge.
+ Use https://repox.jfrog.io for SaaS or https://repox-internal.dev.sonar.build for the dev Edge.
+ default: https://repox-internal.sonar.build
poetry-virtualenvs-path:
description: Path to the Poetry virtual environments, relative to GitHub workspace. The folder is cached only if it is a subdirectory of
`poetry-cache-dir`.
@@ -119,10 +120,10 @@ runs:
id: secrets
with:
# yamllint disable rule:line-length
- url: ${{ contains(inputs.repox-url, 'jfrog.io') && 'https://vault.sonar.build' || 'https://vault.dev.sonar.build' }}
+ url: https://vault.sonar.build
secrets: |
- development/${{ contains(inputs.repox-url, 'jfrog.io') && 'artifactory' || 'artifactory-edge-dev' }}/token/{REPO_OWNER_NAME_DASH}-${{ env.ARTIFACTORY_READER_ROLE }} username | ARTIFACTORY_USERNAME;
- development/${{ contains(inputs.repox-url, 'jfrog.io') && 'artifactory' || 'artifactory-edge-dev' }}/token/{REPO_OWNER_NAME_DASH}-${{ env.ARTIFACTORY_READER_ROLE }} access_token | ARTIFACTORY_ACCESS_TOKEN;
+ development/${{ contains(inputs.repox-url, 'jfrog.io') && 'artifactory' || (contains(inputs.repox-url, '.dev.sonar.build') && 'artifactory-edge-dev' || 'artifactory-edge-prod') }}/token/{REPO_OWNER_NAME_DASH}-${{ env.ARTIFACTORY_READER_ROLE }} username | ARTIFACTORY_USERNAME;
+ development/${{ contains(inputs.repox-url, 'jfrog.io') && 'artifactory' || (contains(inputs.repox-url, '.dev.sonar.build') && 'artifactory-edge-dev' || 'artifactory-edge-prod') }}/token/{REPO_OWNER_NAME_DASH}-${{ env.ARTIFACTORY_READER_ROLE }} access_token | ARTIFACTORY_ACCESS_TOKEN;
# yamllint enable rule:line-length
- name: Configure Poetry authentication
diff --git a/config-uv/action.yml b/config-uv/action.yml
index 43d35594..fb2e7810 100644
--- a/config-uv/action.yml
+++ b/config-uv/action.yml
@@ -13,8 +13,9 @@ inputs:
description: Name of the uv index in pyproject.toml to authenticate (e.g. repox for `[[tool.uv.index]]` with `name = "repox"`)
default: repox
repox-url:
- description: URL for Repox used to resolve dependencies. Use https://repox-internal.dev.sonar.build for the JFrog Edge.
- default: https://repox.jfrog.io
+ description: URL for Repox used to resolve dependencies. Defaults to the production JFrog Edge.
+ Use https://repox.jfrog.io for SaaS or https://repox-internal.dev.sonar.build for the dev Edge.
+ default: https://repox-internal.sonar.build
uv-cache-dir:
description: Path to the uv cache directory, relative to GitHub workspace
default: .cache/uv
@@ -107,10 +108,10 @@ runs:
id: secrets
with:
# yamllint disable rule:line-length
- url: ${{ contains(inputs.repox-url, 'jfrog.io') && 'https://vault.sonar.build' || 'https://vault.dev.sonar.build' }}
+ url: https://vault.sonar.build
secrets: |
- development/${{ contains(inputs.repox-url, 'jfrog.io') && 'artifactory' || 'artifactory-edge-dev' }}/token/{REPO_OWNER_NAME_DASH}-${{ env.ARTIFACTORY_READER_ROLE }} username | ARTIFACTORY_USERNAME;
- development/${{ contains(inputs.repox-url, 'jfrog.io') && 'artifactory' || 'artifactory-edge-dev' }}/token/{REPO_OWNER_NAME_DASH}-${{ env.ARTIFACTORY_READER_ROLE }} access_token | ARTIFACTORY_ACCESS_TOKEN;
+ development/${{ contains(inputs.repox-url, 'jfrog.io') && 'artifactory' || (contains(inputs.repox-url, '.dev.sonar.build') && 'artifactory-edge-dev' || 'artifactory-edge-prod') }}/token/{REPO_OWNER_NAME_DASH}-${{ env.ARTIFACTORY_READER_ROLE }} username | ARTIFACTORY_USERNAME;
+ development/${{ contains(inputs.repox-url, 'jfrog.io') && 'artifactory' || (contains(inputs.repox-url, '.dev.sonar.build') && 'artifactory-edge-dev' || 'artifactory-edge-prod') }}/token/{REPO_OWNER_NAME_DASH}-${{ env.ARTIFACTORY_READER_ROLE }} access_token | ARTIFACTORY_ACCESS_TOKEN;
# yamllint enable rule:line-length
- name: Configure uv authentication