Repository navigation
feat(release): pass an install token to the stage build (ENG-3550) - #108
Merged
Merged
Conversation
A repository whose lockfile resolves packages from a private registry other than GitHub Packages could not be staged: the build job had no credential for it. package-stage now takes an optional INSTALL_TOKEN secret and exposes it to the install script only. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Frudrax Cheng (auroursa)
requested a review
from Tom Tang (qwerzl)
as a code owner
October 10, 2026 05:28
|
Note Currently processing new changes in this PR. This may take a few minutes, please wait... ⚙️ Run configuration
📒 Files selected for processing (3)
✨ Finishing Touches
Comment |
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.
Part of ENG-3550.
Problem
package-stageinstalls the caller's dependencies with a token that reads GitHub Packages only. A repository whose lockfile also resolves packages from another private registry cannot be staged: the install fails, and the workflow has no way to receive a credential for that registry. The only secrets it accepts are the GitHub App pair used to notify downstream repositories.Change
package-stagetakes an optionalINSTALL_TOKENsecret and sets it as$INSTALL_TOKENfor the install step. The caller uses it in itsinstallinput:verify,pack, crate packaging and the publish job do not.package-promoteis unchanged. It installs nothing from the caller; it publishes the stored candidates.The build job still runs caller code with read-only permissions. The token is the caller's own secret, handed to the caller's own install script; the README asks for a read-only one.
Validation
python3 -m unittest discover -s test: 22 tests pass locally, including a new one asserting that the secret is optional, that the install step is the only place in either workflow that references it, and that the promote workflow does not mention it.CI on this pull request is pending.
🤖 Generated with Claude Code
Need help on this PR? Tag
@codesmith-botwith what you need. Autofix is disabled.Summary by CodeRabbit
INSTALL_TOKENfor installing dependencies from private registries other than GitHub Packages. The token is available during installation only.