Update GitHub Actions workflow for artifact handling#5795
Merged
davidism merged 1 commit intopallets:stablefrom Aug 19, 2025
Merged
Update GitHub Actions workflow for artifact handling#5795davidism merged 1 commit intopallets:stablefrom
davidism merged 1 commit intopallets:stablefrom
Conversation
Member
|
I don't understand why this change is needed. We're not doing the thing you say is a vulnerability (and as you say, passing |
298af76 to
4dd52ca
Compare
Member
|
Going to merge this since you work for GitHub security, but I'd still like to understand what vulnerability we're actually preventing here. |
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 subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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.
Use
artifact-idinstead of (default assumed)namewith Actions Artifacts 🔒This pull updates the publish workflow to use
artifact-idinstead of the default assumedname(in this case the literal wordartifact) when downloading artifacts that have been previously published in prior workflow steps. This is important because artifacts produced by GitHub Actions can be completely overwritten by other workflow runs if they use the samenameunder very unique circumstances (like passing therun-idvalue to the download-artifact action to point to an entirely different workflow run - don't do that). To avoid potential TOCTOU issues/vulnerabilities where an artifact might be replaced between upload and download, the newartifact-idsinput allows you to download artifacts by their specific ID rather than by name. This is safer but also helps lead to more deterministic workflow builds by referencing the artifact you wish to download by its exact id.This PR also hardens the workflow a bit by adding
persist-credentials: falseto the checkout step.I recently did some work to land these exact changes in the urllib3/urllib3 and wanted to contribute those same changes here as well! Also recently made updates to Python's requests library to do the same.