Repository navigation
Fixes CI base image pulls by not inheriting runner registry credentials - #7330
Closed
myurasov-nv wants to merge 2 commits into
Closed
myurasov-nv wants to merge 2 commits into
myurasov-nv wants to merge 2 commits into
Conversation
Member
Author
|
Closing in favour of #7332, which targets the branch where this failure actually occurs. This PR changed
#7332 keeps the credential and instead verifies it can read the configured base image, retrying without it only when the registry refuses it. That is branch-agnostic, so it is correct for a public or a private base image without the regression. The |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
CI docker builds intermittently fail to resolve
nvcr.io/nvidia/isaac-sim:6.0.1withdenied: Access Denied.setup-docker-configcopies the runner's~/.docker/config.jsoninto the job's tempDOCKER_CONFIG, and NGC denies an inherited org credential lacking a grant instead of falling back to anonymous. Now the temp config starts with emptyauths, andcompute-deps-hashsurfaces resolve errors instead of silently dropping the base-image digest from the cache key. Verified by anonymous manifest fetch with a clean config.FROMwithdenied: Access Denied; digest-resolve failures are silently swallowed and drop the digest from the deps-cache keyReproduction
On a machine whose
~/.docker/config.jsonholds a valid inline nvcr.io credential for an org with no grant onnvidia/isaac-sim, resolve the base image the same way the build does:Observed in CI:
ERROR: failed to authorize: failed to fetch oauth token: denied: Access Denied(https://github.com/isaac-sim/IsaacLab/actions/runs/32741844858; fork PR with a deps-cache miss, and the job loggedNGC_API_KEY not set - skipping nvcr.io login, so the only credential came from the runner's home config). The denial requires a valid credential from a non-granted org: a missing or invalid credential falls back to anonymous access and succeeds, which is why only some runners fail.Repeat with a clean config, as the patched action now provides:
Returns
"sha256:783444c706538aa76cf5126e911ddc5e618779e6105305ad4af4260362a30aa9"Type of change
Release backport
developChecklist
pre-commitchecks with./isaaclab.sh --formatsource/<pkg>/changelog.d/for every touched package (do not editCHANGELOG.rstor bumpextension.toml— CI handles that)CONTRIBUTORS.mdor my name already exists there