Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 7 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,18 +73,19 @@ These badges show the status of workflows in dummy repositories that use (or sho
The `config-*` and `build-*` actions select the dependency resolve endpoint from `runner.environment` when `repox-url` is omitted:

- GitHub-hosted runners use SaaS Repox (`https://repox.jfrog.io`).
- Self-hosted runners use the production JFrog Edge (`https://repox-internal.sonar.build`).
- Self-hosted runners use the production JFrog Edge (`https://repox.sonar.build`).
- An explicit `repox-url` always overrides runner selection, including SaaS, dev Edge and production Edge URLs.

The selected URL also determines the matching Vault server and reader-token engine.

- Deployment, publication, build info and promotion always use SaaS Repox (`https://repox.jfrog.io`): the Edge is read-only.
- The internal Edge hostname is only reachable from runners inside the SonarSource network.
- Self-hosted runners without internal Edge connectivity must set `repox-url: https://repox.jfrog.io` on every affected `config-*`
and `build-*` action, including actions called through composite wrappers. GitHub-hosted runners with internal connectivity can
explicitly select `repox-url: https://repox-internal.sonar.build`.
- `repox.sonar.build` resolves to the Edge's internal load balancer from the SonarSource runner networks and to its public load
balancer elsewhere, so the same URL works for runners, developer machines and committed lockfiles.
- Self-hosted runners that must not use the Edge must set `repox-url: https://repox.jfrog.io` on every affected `config-*`
and `build-*` action, including actions called through composite wrappers. GitHub-hosted runners can explicitly select
`repox-url: https://repox.sonar.build`.
- Repositories resolving through Edge during Orchestrator-based integration tests need an Orchestrator release that recognizes
`repox-internal.sonar.build` as a SonarSource Artifactory host. Until they adopt that release, set
`repox.sonar.build` as a SonarSource Artifactory host (6.4.4.4797 or later). Until they adopt that release, set
`repox-url: https://repox.jfrog.io` to preserve authenticated private downloads and version alias resolution.
- Match hardcoded package indexes and credentials to the selected `repox-url`. For example, update a named uv index and its
lockfile when moving to the Edge, and avoid overwriting Edge credentials with independently fetched SaaS tokens.
Expand Down
2 changes: 1 addition & 1 deletion build-gradle/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ inputs:
repox-url:
description: URL for Repox used to resolve dependencies. Defaults to SaaS on GitHub-hosted runners and the production Edge
on self-hosted runners. Explicit URLs override runner selection.
default: ${{ runner.environment == 'github-hosted' && 'https://repox.jfrog.io' || 'https://repox-internal.sonar.build' }}
default: ${{ runner.environment == 'github-hosted' && 'https://repox.jfrog.io' || 'https://repox.sonar.build' }}
use-develocity:
description: Whether to use Develocity for build tracking.
default: 'false'
Expand Down
2 changes: 1 addition & 1 deletion build-maven/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ inputs:
repox-url:
description: URL for Repox used to resolve dependencies. Defaults to SaaS on GitHub-hosted runners and the production Edge
on self-hosted runners. Explicit URLs override runner selection.
default: ${{ runner.environment == 'github-hosted' && 'https://repox.jfrog.io' || 'https://repox-internal.sonar.build' }}
default: ${{ runner.environment == 'github-hosted' && 'https://repox.jfrog.io' || 'https://repox.sonar.build' }}
use-develocity:
description: Whether to use Develocity for build tracking.
default: 'false'
Expand Down
2 changes: 1 addition & 1 deletion build-npm/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ inputs:
repox-url:
description: URL for Repox used to resolve dependencies. Defaults to SaaS on GitHub-hosted runners and the production Edge
on self-hosted runners. Explicit URLs override runner selection.
default: ${{ runner.environment == 'github-hosted' && 'https://repox.jfrog.io' || 'https://repox-internal.sonar.build' }}
default: ${{ runner.environment == 'github-hosted' && 'https://repox.jfrog.io' || 'https://repox.sonar.build' }}
sonar-platform:
description: SonarQube primary platform (next, sqc-eu, sqc-us, or none). Use 'none' to skip sonar scans.
default: next
Expand Down
2 changes: 1 addition & 1 deletion build-poetry/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ inputs:
repox-url:
description: URL for Repox used to resolve dependencies. Defaults to SaaS on GitHub-hosted runners and the production Edge
on self-hosted runners. Explicit URLs override runner selection.
default: ${{ runner.environment == 'github-hosted' && 'https://repox.jfrog.io' || 'https://repox-internal.sonar.build' }}
default: ${{ runner.environment == 'github-hosted' && 'https://repox.jfrog.io' || 'https://repox.sonar.build' }}
sonar-platform:
description: SonarQube primary platform (next, sqc-eu, sqc-us, or none). Use 'none' to skip sonar scans.
default: next
Expand Down
2 changes: 1 addition & 1 deletion build-yarn/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ inputs:
repox-url:
description: URL for Repox used to resolve dependencies. Defaults to SaaS on GitHub-hosted runners and the production Edge
on self-hosted runners. Explicit URLs override runner selection.
default: ${{ runner.environment == 'github-hosted' && 'https://repox.jfrog.io' || 'https://repox-internal.sonar.build' }}
default: ${{ runner.environment == 'github-hosted' && 'https://repox.jfrog.io' || 'https://repox.sonar.build' }}
sonar-platform:
description: SonarQube primary platform (next, sqc-eu, sqc-us, or none). Use 'none' to skip sonar scans.
default: next
Expand Down
2 changes: 1 addition & 1 deletion config-bun/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ inputs:
repox-url:
description: URL for Repox used to resolve dependencies. Defaults to SaaS on GitHub-hosted runners and the production Edge
on self-hosted runners. Explicit URLs override runner selection.
default: ${{ runner.environment == 'github-hosted' && 'https://repox.jfrog.io' || 'https://repox-internal.sonar.build' }}
default: ${{ runner.environment == 'github-hosted' && 'https://repox.jfrog.io' || 'https://repox.sonar.build' }}
disable-caching:
description: Whether to disable Bun install caching entirely
default: 'false'
Expand Down
2 changes: 1 addition & 1 deletion config-gradle/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ inputs:
repox-url:
description: URL for Repox used to resolve dependencies. Defaults to SaaS on GitHub-hosted runners and the production Edge
on self-hosted runners. Explicit URLs override runner selection.
default: ${{ runner.environment == 'github-hosted' && 'https://repox.jfrog.io' || 'https://repox-internal.sonar.build' }}
default: ${{ runner.environment == 'github-hosted' && 'https://repox.jfrog.io' || 'https://repox.sonar.build' }}
use-develocity:
description: Whether to use Develocity for build tracking.
default: 'false'
Expand Down
2 changes: 1 addition & 1 deletion config-maven/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ inputs:
repox-url:
description: URL for Repox used to resolve dependencies. Defaults to SaaS on GitHub-hosted runners and the production Edge
on self-hosted runners. Explicit URLs override runner selection.
default: ${{ runner.environment == 'github-hosted' && 'https://repox.jfrog.io' || 'https://repox-internal.sonar.build' }}
default: ${{ runner.environment == 'github-hosted' && 'https://repox.jfrog.io' || 'https://repox.sonar.build' }}
use-develocity:
description: Whether to use Develocity for build tracking.
default: 'false'
Expand Down
2 changes: 1 addition & 1 deletion config-npm/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ inputs:
repox-url:
description: URL for Repox used to resolve dependencies. Defaults to SaaS on GitHub-hosted runners and the production Edge
on self-hosted runners. Explicit URLs override runner selection.
default: ${{ runner.environment == 'github-hosted' && 'https://repox.jfrog.io' || 'https://repox-internal.sonar.build' }}
default: ${{ runner.environment == 'github-hosted' && 'https://repox.jfrog.io' || 'https://repox.sonar.build' }}
host-actions-root:
description: Path to the actions folder on the host (used when called from another local action)
default: ''
Expand Down
2 changes: 1 addition & 1 deletion config-nuget/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ inputs:
repox-url:
description: URL for Repox used to resolve dependencies. Defaults to SaaS on GitHub-hosted runners and the production Edge
on self-hosted runners. Explicit URLs override runner selection.
default: ${{ runner.environment == 'github-hosted' && 'https://repox.jfrog.io' || 'https://repox-internal.sonar.build' }}
default: ${{ runner.environment == 'github-hosted' && 'https://repox.jfrog.io' || 'https://repox.sonar.build' }}

runs:
using: composite
Expand Down
2 changes: 1 addition & 1 deletion config-pip/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ inputs:
repox-url:
description: URL for Repox used to resolve dependencies. Defaults to SaaS on GitHub-hosted runners and the production Edge
on self-hosted runners. Explicit URLs override runner selection.
default: ${{ runner.environment == 'github-hosted' && 'https://repox.jfrog.io' || 'https://repox-internal.sonar.build' }}
default: ${{ runner.environment == 'github-hosted' && 'https://repox.jfrog.io' || 'https://repox.sonar.build' }}
cache-paths:
description: Cache paths to use (multiline).
default: ~/.cache/pip
Expand Down
2 changes: 1 addition & 1 deletion config-poetry/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ inputs:
repox-url:
description: URL for Repox used to resolve dependencies. Defaults to SaaS on GitHub-hosted runners and the production Edge
on self-hosted runners. Explicit URLs override runner selection.
default: ${{ runner.environment == 'github-hosted' && 'https://repox.jfrog.io' || 'https://repox-internal.sonar.build' }}
default: ${{ runner.environment == 'github-hosted' && 'https://repox.jfrog.io' || 'https://repox.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`.
Expand Down
2 changes: 1 addition & 1 deletion config-uv/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ inputs:
repox-url:
description: URL for Repox used to resolve dependencies. Defaults to SaaS on GitHub-hosted runners and the production Edge
on self-hosted runners. Explicit URLs override runner selection.
default: ${{ runner.environment == 'github-hosted' && 'https://repox.jfrog.io' || 'https://repox-internal.sonar.build' }}
default: ${{ runner.environment == 'github-hosted' && 'https://repox.jfrog.io' || 'https://repox.sonar.build' }}
uv-cache-dir:
description: Path to the uv cache directory, relative to GitHub workspace
default: .cache/uv
Expand Down
4 changes: 2 additions & 2 deletions spec/config-bun_spec.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@ eval "$(shellspec - -c) exit 1"

export GITHUB_ENV=/dev/null
export GITHUB_OUTPUT=/dev/null
export ARTIFACTORY_URL="https://repox-internal.sonar.build/artifactory"
export ARTIFACTORY_URL="https://repox.sonar.build/artifactory"
export ARTIFACTORY_USERNAME="test-user"
export ARTIFACTORY_ACCESS_TOKEN="test-token"

EDGE_REGISTRY="https://repox-internal.sonar.build/artifactory/api/npm/npm/"
EDGE_REGISTRY="https://repox.sonar.build/artifactory/api/npm/npm/"

Describe 'config-bun/bun_config.sh'
It 'does not run main when sourced'
Expand Down
Loading