Skip to content

ci: pin github actions to sha and update to latest versions - #296

Merged
amondnet merged 3 commits into
masterfrom
amondnet/heavenly-budget
Mar 26, 2026
Merged

ci: pin github actions to sha and update to latest versions#296
amondnet merged 3 commits into
masterfrom
amondnet/heavenly-budget

Conversation

@amondnet

@amondnet amondnet commented Mar 25, 2026

Copy link
Copy Markdown
Owner

Summary

Pin all GitHub Actions to full commit SHAs with version comments for supply chain security. This prevents potential supply chain attacks where a mutable tag (e.g., v4) could be redirected to malicious code.

Changes

  • actions/checkout: v4de0fac2e4500dabe0009e67214ff5f5447ce83dd (v6.0.2)
  • pnpm/action-setup: v4fc06bc1257f339d1d5d8b3a19a8cae5388b55320 (v5.0.0)
  • actions/setup-node: v453b83947a5a98c8d113130e565377fae1a50d02f (v6.3.0)
  • actions/upload-artifact: v4bbbca2ddaa5d8feaa63e36b76fdaad77386f024f (v7.0.0)
  • googleapis/release-please-action: v416a9c90856f42705d54a6fda1823352bdc62cf38 (v4.4.0)

Affected workflows: check-dist.yml, ci.yml, deploy.yml, example-angular.yml, example-express-basic-auth.yml, example-nextjs.yml, example-scope.yml, example-static.yml, release-please.yml

Test Plan

  • Verify CI workflow runs successfully after merge
  • Verify deploy workflow runs successfully
  • Verify release-please workflow functions correctly
  • Verify all example workflows execute without errors

Summary by cubic

Pinned all GitHub Actions to exact commit SHAs and upgraded to the latest versions to harden CI/CD. Added Dependabot to keep GitHub Actions and pnpm dependencies up to date weekly.

  • Dependencies
    • actions/checkout → v6.0.2, pnpm/action-setup → v5.0.0, actions/setup-node → v6.3.0, actions/upload-artifact → v7.0.0, googleapis/release-please-action → v4.4.0
    • Added .github/dependabot.yml for weekly updates to GitHub Actions and pnpm (commit prefixes: ci, chore)
    • Updated workflows: check-dist.yml, ci.yml, deploy.yml, release-please.yml, and example-*.yml

Written for commit da8ac5b. Summary will update on new commits.

Copilot AI review requested due to automatic review settings March 25, 2026 22:09
@gemini-code-assist

Copy link
Copy Markdown
Contributor

Note

Gemini is unable to generate a summary for this pull request due to the file types involved not being currently supported.

@github-actions

github-actions Bot commented Mar 25, 2026

Copy link
Copy Markdown
Contributor

Deploy preview for express-basic-auth ready!

✅ Preview
https://express-basic-auth-33tuak5cz-minsu-lees-projects-b1e388b7.vercel.app

Built with commit da8ac5b.
This pull request is being automatically deployed with vercel-action

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Pins all GitHub Actions used across this repository’s workflows to immutable commit SHAs (with version comments) to reduce supply-chain risk from mutable tags.

Changes:

  • Replace @v4 action references with full commit SHAs across CI, deploy, and example workflows.
  • Add inline comments documenting the intended action release versions for the pinned SHAs.

Reviewed changes

Copilot reviewed 9 out of 9 changed files in this pull request and generated no comments.

Show a summary per file
File Description
.github/workflows/release-please.yml Pins googleapis/release-please-action to a full SHA.
.github/workflows/example-static.yml Pins actions/checkout to a full SHA.
.github/workflows/example-scope.yml Pins actions/checkout to a full SHA.
.github/workflows/example-nextjs.yml Pins actions/checkout, pnpm/action-setup, and actions/setup-node to full SHAs.
.github/workflows/example-express-basic-auth.yml Pins actions/checkout to a full SHA.
.github/workflows/example-angular.yml Pins actions/checkout, pnpm/action-setup, and actions/setup-node to full SHAs.
.github/workflows/deploy.yml Pins actions/checkout to a full SHA.
.github/workflows/ci.yml Pins actions/checkout, pnpm/action-setup, and actions/setup-node to full SHAs across jobs.
.github/workflows/check-dist.yml Pins actions/checkout, pnpm/action-setup, actions/setup-node, and actions/upload-artifact to full SHAs.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

No issues found across 9 files

Requires human review: Modifies CI/CD workflows, which is explicitly listed as a high-impact change requiring human review in the provided instructions.

Architecture diagram
sequenceDiagram
    participant Dev as Developer
    participant GH as GitHub Orchestrator
    participant Runner as Action Runner (VM)
    participant Registry as External Action Repos
    participant Store as Artifact Storage

    Note over GH,Registry: Supply Chain Security Hardening: SHA Pinning

    Dev->>GH: Push Code / Open PR
    GH->>Runner: Initialize Job (ci.yml / deploy.yml / etc.)

    Runner->>Registry: CHANGED: Fetch actions/checkout (pinned to SHA)
    Registry-->>Runner: v6.0.2 Source Code
    Runner->>Runner: Checkout local repository

    Runner->>Registry: CHANGED: Fetch pnpm/action-setup (pinned to SHA)
    Registry-->>Runner: v5.0.0 Source Code
    Runner->>Runner: Install pnpm environment

    Runner->>Registry: CHANGED: Fetch actions/setup-node (pinned to SHA)
    Registry-->>Runner: v6.3.0 Source Code
    Runner->>Runner: Provision Node.js runtime

    Note over Runner: Execute Build & Test Scripts

    alt check-dist Job Failure
        Runner->>Registry: CHANGED: Fetch actions/upload-artifact (pinned to SHA)
        Registry-->>Runner: v7.0.0 Source Code
        Runner->>Store: Upload distribution diff
    end

    Note over Runner,GH: Release Workflow (release-please.yml)
    opt On Main Branch
        Runner->>Registry: CHANGED: Fetch release-please-action (pinned to SHA)
        Registry-->>Runner: v4.4.0 Source Code
        Runner->>GH: Create Release PR / Update Changelog
    end
Loading

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

1 issue found across 1 file (changes from recent commits).

Prompt for AI agents (unresolved issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name=".github/dependabot.yml">

<violation number="1" location=".github/dependabot.yml:10">
P2: `"pnpm"` is not a valid Dependabot `package-ecosystem` value. Use `"npm"` instead — Dependabot's `npm` ecosystem automatically detects and handles `pnpm-lock.yaml` files. With the current value, Dependabot will silently ignore this entry and never create dependency update PRs for your pnpm packages.</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

Comment thread .github/dependabot.yml Outdated
@github-actions

github-actions Bot commented Mar 26, 2026

Copy link
Copy Markdown
Contributor

Deploy preview for team-scope-test ready!

✅ Preview
https://team-scope-test-p8rm53o1h-dietfriends.vercel.app

Built with commit 93c4dd2.
This pull request is being automatically deployed with vercel-action

Pin all GitHub Actions to full commit SHAs with version comments
for supply chain security:
- actions/checkout: v4 → v6.0.2
- pnpm/action-setup: v4 → v5.0.0
- actions/setup-node: v4 → v6.3.0
- actions/upload-artifact: v4 → v7.0.0
- googleapis/release-please-action: v4 → v4.4.0
@amondnet
amondnet force-pushed the amondnet/heavenly-budget branch from 7209b1a to 93c4dd2 Compare March 26, 2026 04:54
@sonarqubecloud

Copy link
Copy Markdown

@amondnet
amondnet merged commit 2cf3974 into master Mar 26, 2026
6 of 13 checks passed
@amondnet
amondnet deleted the amondnet/heavenly-budget branch March 26, 2026 04:54
@amondnet amondnet self-assigned this Mar 26, 2026
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