Skip to content

ci: pin runs-on to ubuntu-24.04 and actions by SHA - #377

Merged
Bugs5382 merged 4 commits into
mainfrom
ci/28-pin-runners-actions
Oct 15, 2026
Merged

Bugs5382 merged 4 commits into
mainfrom
ci/28-pin-runners-actions

Conversation

@Bugs5382

Copy link
Copy Markdown
Contributor

What and why

ubuntu-latest moves to Ubuntu 26 on 2026-10-19, which can break builds
without warning. Pinned runners and actions keep CI reproducible; versions
are bumped by hand in planned PRs (no Dependabot or Renovate).

Every GitHub-hosted job now runs on ubuntu-24.04 (the arm64 runner and any
self-hosted group are unchanged). Every third-party action is pinned by full
commit SHA with a # vX.Y.Z comment, resolved from the action's own release
tag (dereferencing the annotated tag to its commit). Actions still on the
Node 20 runtime are bumped to their current release and pinned there, since
pinning a Node 20 action by SHA does not fix the deprecation risk; actions
already past Node 20 are pinned at their current major, not bumped further.
One exception: CryptOS-PKI/.github/.github/workflows/asset-metadata.yml@main
is a same-org reusable workflow call with no release to pin to, so it is
left as-is.

Refs CryptOS-PKI/.github#28

Verification

  • Lint clean
  • Documentation updated (if behavior or API changed)

How this was verified

  • actionlint over the full .github/workflows/ tree: clean.
  • Checked every pinned action's action.yml at both its old and new ref to
    confirm the runtime (node20 vs node24) before deciding whether to bump
    past the pinned major or just pin the existing one.
  • Read each bumped action's release notes for the versions in between for
    breaking changes, and checked this repo's actual usage against them (for
    example, actions/download-artifact's v5 breaking change only affects
    downloads by artifact ID, and every use here downloads by name).

ubuntu-latest moves to Ubuntu 26 on 2026-10-19, which can break builds
without warning. Every GitHub-hosted job now runs on ubuntu-24.04
(self-hosted groups and the arm64 runner are unchanged), and every
third-party action is pinned by full commit SHA with a version
comment. Actions still on the Node 20 runtime are bumped to their
current SHA-pinned release (Node 24); actions already past Node 20
are pinned at their current major.

Refs CryptOS-PKI/.github#28

Signed-off-by: Bugs5382 <12115015+Bugs5382@users.noreply.github.com>
@Bugs5382
Bugs5382 marked this pull request as ready for review October 14, 2026 15:32
@github-actions github-actions Bot added the skip-changelog Excluded from release notes (chore/ci/test/style). label Oct 14, 2026
@Bugs5382

Copy link
Copy Markdown
Contributor Author

Approved. Hosted jobs pinned to ubuntu-24.04 and actions pinned by SHA. Refs CryptOS-PKI/.github#28

@Bugs5382
Bugs5382 enabled auto-merge (squash) October 14, 2026 15:59
@Bugs5382
Bugs5382 merged commit cc33682 into main Oct 15, 2026
16 checks passed
@Bugs5382
Bugs5382 deleted the ci/28-pin-runners-actions branch October 15, 2026 14:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

skip-changelog Excluded from release notes (chore/ci/test/style).

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant