chore: update GitHub Actions for Node 24#518
Conversation
|
| steps: | ||
| - name: Checkout repository | ||
| uses: actions/checkout@v4 | ||
| uses: actions/checkout@v6 |
There was a problem hiding this comment.
Floating tags in security-sensitive workflow
release.yml upgrades to @v6 using mutable floating tags, while ci.yml and generate-references.yml consistently pin all actions to specific commit SHAs (e.g. actions/checkout@85e6279...). This workflow has elevated permissions (contents: write, actions: write, id-token: write) and accesses multiple secrets for PyPI publishing and the GitHub App releaser token, making it the highest-priority workflow to harden against supply-chain attacks.
The same issue applies to actions/setup-python@v6 (line 99), actions/create-github-app-token@v3 (line 86), actions/cache@v5 (line 117), and actions/checkout@v6 on line 236.
Consider pinning each action to its full commit SHA (with the tag in a comment for readability), matching the pattern already used in the other two workflows.
Prompt To Fix With AI
This is a comment left during a code review.
Path: .github/workflows/release.yml
Line: 32
Comment:
**Floating tags in security-sensitive workflow**
`release.yml` upgrades to `@v6` using mutable floating tags, while `ci.yml` and `generate-references.yml` consistently pin all actions to specific commit SHAs (e.g. `actions/checkout@85e6279...`). This workflow has elevated permissions (`contents: write`, `actions: write`, `id-token: write`) and accesses multiple secrets for PyPI publishing and the GitHub App releaser token, making it the highest-priority workflow to harden against supply-chain attacks.
The same issue applies to `actions/setup-python@v6` (line 99), `actions/create-github-app-token@v3` (line 86), `actions/cache@v5` (line 117), and `actions/checkout@v6` on line 236.
Consider pinning each action to its full commit SHA (with the tag in a comment for readability), matching the pattern already used in the other two workflows.
How can I resolve this? If you propose a fix, please make it concise.
posthog-python Compliance ReportDate: 2026-04-16 16:04:55 UTC ✅ All Tests Passed!30/30 tests passed Capture Tests✅ 29/29 tests passed View Details
Feature_Flags Tests✅ 1/1 tests passed View Details
|
💡 Motivation and Context
Update the remaining workflow actions that still target older Node runtimes, and make the uv setup deterministic by declaring a required version in
pyproject.toml.💚 How did you test it?
.github/workflows/release.yml,.github/workflows/ci.yml, and.github/workflows/generate-references.ymlwith RubyYAML.load_filepyproject.tomlwithuv run pythongit diff --check📝 Checklist
If releasing new changes
sampo addto generate a changeset filereleaselabel to the PR