Skip to content

chore(ci): add GitHub Actions lockfile - #51

Open
setchy wants to merge 1 commit into
mainfrom
chore/actions-lock
Open

setchy wants to merge 1 commit into
mainfrom
chore/actions-lock

Conversation

@setchy

@setchy setchy commented Oct 22, 2026 •

Copy link
Copy Markdown
Member

Summary

Adds a GitHub Actions lockfile generated with gh actions-lock. Every action used by the workflows (direct and transitive) is recorded with its verified commit SHA in .github/workflows/actions.lock.

  • Workflows reference readable version tags (e.g. actions/checkout@v7.0.1); the lockfile records the immutable SHA resolved for each ref.
  • Existing inline SHA pins in the workflows were consolidated into the lockfile.

Notes

  • Regenerate the lockfile after adding or changing any uses: with gh actions-lock.
  • Verify it in CI with gh actions-lock --verify.

Rollout considerations

gh actions-lock stores pins in the lockfile, so workflows move back to version tags. The org's current tooling still enforces inline SHA pinning:

  • Renovate (local>gitify-app/renovate-config → helpers:pinGitHubActionDigestsToSemver) will re-pin these refs on its next run.
  • zizmor's unpinned-uses audit flags tag refs.
  • SonarCloud rule githubactions:S7637 flags tag refs.

These tools do not understand lockfiles yet. Adopting this approach needs a policy decision: either relax those checks to ref-pin and rely on the lockfile, or keep inline SHA pins and use actions.lock as an additional record of transitive dependencies (gh actions-lock --verify accepts that state).

@setchy
setchy requested a review from afonsojramos as a code owner October 22, 2026 10:39
@sonarqubecloud

Copy link
Copy Markdown

Quality Gate Failed Quality Gate failed

Failed conditions
C Security Rating on New Code (required ≥ A)

See analysis details on SonarQube Cloud

Catch issues before they fail your Quality Gate with our IDE extension SonarQube for IDE

Comment thread .github/workflows/ci.yml
steps:
- name: Checkout
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
uses: actions/checkout@v7.0.1
Comment thread .github/workflows/ci.yml
steps:
- name: Checkout
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
uses: actions/checkout@v7.0.1
Comment thread .github/workflows/ci.yml

- name: Setup Vite+
uses: voidzero-dev/setup-vp@68f39c78aaf39be468cabd2afb09c162574c84af # v1.21.2
uses: voidzero-dev/setup-vp@v1.21.2
Comment thread .github/workflows/ci.yml
steps:
- name: Checkout
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
uses: actions/checkout@v7.0.1
Comment thread .github/workflows/ci.yml
steps:
- name: Checkout
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
uses: actions/checkout@v7.0.1
- name: Run release-please
id: release
uses: googleapis/release-please-action@45996ed1f6d02564a971a2fa1b5860e934307cf7 # v5.0.0
uses: googleapis/release-please-action@v5.0.0
steps:
- name: Checkout
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
uses: actions/checkout@v7.0.1

- name: Setup Vite+
uses: voidzero-dev/setup-vp@68f39c78aaf39be468cabd2afb09c162574c84af # v1.21.2
uses: voidzero-dev/setup-vp@v1.21.2
steps:
- name: Checkout repository
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
uses: actions/checkout@v7.0.1

- name: Run zizmor 🌈
uses: zizmorcore/zizmor-action@cc914d7f3750a2d13d75c7f184a1060aa0e9d482 # v0.6.4
uses: zizmorcore/zizmor-action@v0.6.4
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.

2 participants