Skip to content

ci: pin third-party actions to commit SHAs - #88

Merged
B4nan merged 1 commit into
masterfrom
chore/pin-github-actions
Aug 20, 2026
Merged

B4nan merged 1 commit into
masterfrom
chore/pin-github-actions

Conversation

@B4nan

@B4nan B4nan commented Aug 20, 2026

Copy link
Copy Markdown
Member

This pins every third-party action in the workflows to a full commit SHA, keeping the resolved version tag as a trailing comment. Renovate understands that convention and updates the SHA and comment together.

Same change as apify/crawlee#4051, rolled out team-wide. The trigger was the v11 tag of EndBug/add-and-commit moving to a broken release that failed to load and killed the crawlee publish workflow. With SHA pins, a tag moving under us, by accident or by compromise, can't break or hijack CI anymore. Where EndBug/add-and-commit is used, it's pinned to v11.0.0, the last working release.

Own-org references (apify/*) stay on floating refs on purpose, since we control those repos.

Floating tags can move to broken or malicious commits, as happened with
EndBug/add-and-commit v11 (see apify/crawlee#4051). Pin all third-party
actions to full commit SHAs with the resolved version tag in a trailing
comment. Own-org (apify/*) references stay on floating refs.
@B4nan
B4nan requested a review from barjin August 20, 2026 11:29

@barjin barjin left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you @B4nan , just one nit (applicable for all the PRs) ⬇️

node-version: [18, 20]
fail-fast: true
steps:
- uses: actions/checkout@v3

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

May we also bump all the actions to their latest compatible versions? Once this is merged, there's no way Renovate (or Dependabot or anyone else) will ever try to update this.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

let me double check, I believe renovate should support this too

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Alright, cool then, I was just making a guess. If it can be updated automatically, I have no further questions :)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@B4nan B4nan Aug 20, 2026

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yeah, both renovate and dependabot supports this shape

on the other hand, looks like we never set up renovate in this repo 🙃 #1 was closed for some reason. and we'd need to update the whitelist of allowed repos, plus we dont enforce min release age here

@B4nan
B4nan merged commit 4643e24 into master Aug 20, 2026
3 checks passed
@B4nan
B4nan deleted the chore/pin-github-actions branch August 20, 2026 12:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants