Skip to content

chore(ci): pin every action to a commit SHA - #4

Merged
grinidx merged 1 commit into
mainfrom
chore/pin-actions
Sep 16, 2026
Merged

grinidx merged 1 commit into
mainfrom
chore/pin-actions

Conversation

@grinidx

@grinidx grinidx commented Sep 16, 2026

Copy link
Copy Markdown
Member

Mechanical hardening, no behaviour change.

Every uses: is pinned to a commit SHA, with the tag kept as a trailing comment. A tag is a moving pointer: whoever can move it - the action author, or anyone who compromises their account - runs code in this workflow with whatever the job has in scope. A SHA cannot be moved. The trailing comment is the form Dependabot reads, so updates still arrive as pull requests rather than silently.

Any workflow without a top-level permissions: block now declares contents: read. Jobs needing more still declare their own and override it. The org default is already read, but a default is a setting somebody can widen and a written floor is not.

Part of an estate-wide pass across all dbhq-uk repos on 16 Sep 2026. All 47 workflows were re-parsed as YAML after the change.

… permissions floor

A tag is a moving pointer. Anyone who can move it - the action author, or
anyone who compromises their account - runs code in this workflow with
whatever the job has in scope. A commit SHA cannot be moved.

Every uses: in this repo now pins a SHA with the tag kept as a trailing
comment, which is the form Dependabot reads, so updates still arrive as pull
requests rather than silently.

Where a workflow had no top-level permissions: block it now declares
contents: read. Jobs that need more still declare their own and override it.
The org default is already read, but a default is a setting somebody can
widen and a written floor is not.
@grinidx
grinidx merged commit 4e7f2ac into main Sep 16, 2026
6 checks passed
@grinidx
grinidx deleted the chore/pin-actions branch September 16, 2026 20:21
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.

1 participant