Skip to content

chore(deps): bump actions/checkout from 6 to 7 - #17

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/github_actions/actions/checkout-7
Open

chore(deps): bump actions/checkout from 6 to 7#17
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/github_actions/actions/checkout-7

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jun 22, 2026

Copy link
Copy Markdown
Contributor

Bumps actions/checkout from 6 to 7.

Release notes

Sourced from actions/checkout's releases.

v7.0.0

What's Changed

New Contributors

Full Changelog: actions/checkout@v6.0.3...v7.0.0

v6.0.3

What's Changed

New Contributors

Full Changelog: actions/checkout@v6...v6.0.3

v6.0.2

What's Changed

Full Changelog: actions/checkout@v6.0.1...v6.0.2

v6.0.1

What's Changed

Full Changelog: actions/checkout@v6...v6.0.1

Changelog

Sourced from actions/checkout's changelog.

Changelog

v7.0.0

v6.0.3

v6.0.2

v6.0.1

v6.0.0

v5.0.1

v5.0.0

v4.3.1

v4.3.0

v4.2.2

v4.2.1

... (truncated)

Commits

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Summary by CodeRabbit

  • Chores
    • Updated GitHub Actions workflows to use checkout action v7 (previously v6) across all CI/CD pipelines for improved compatibility and performance.

Bumps [actions/checkout](https://github.com/actions/checkout) from 6 to 7.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@v6...v7)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file github_actions Pull requests that update GitHub Actions code labels Jun 22, 2026
@coderabbitai

coderabbitai Bot commented Jun 22, 2026

Copy link
Copy Markdown

Review Change Stack

Walkthrough

All four GitHub Actions workflow files (.github/workflows/ci.yml, codeql.yml, govulncheck.yml, release.yml) are updated to reference actions/checkout@v7 instead of actions/checkout@v6. No other workflow logic, steps, or configuration are changed.

Changes

actions/checkout v6 → v7 across all workflows

Layer / File(s) Summary
Checkout action version bump
.github/workflows/ci.yml, .github/workflows/codeql.yml, .github/workflows/govulncheck.yml, .github/workflows/release.yml
All five actions/checkout references across the four workflow files are updated from @v6 to @v7. The ci.yml file has two occurrences (one in the test job, one in the lint job); the remaining three files each have one occurrence.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~2 minutes

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely summarizes the main change: bumping actions/checkout from v6 to v7 across multiple workflow files.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch dependabot/github_actions/actions/checkout-7

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai 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.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.github/workflows/ci.yml:
- Line 17: The checkout action on lines 17 and 39 uses the mutable tag `@v7`
instead of being pinned to a specific commit SHA, which creates a supply-chain
security risk. Replace both instances of `actions/checkout@v7` with
`actions/checkout@` followed by the full 40-character commit SHA for the v7
release. Additionally, add the `persist-credentials: false` parameter to both
checkout actions since they are read-only operations and do not require
credential persistence in the git config.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: d3a0b5d2-c12b-4c24-9671-331d9a94ebb8

📥 Commits

Reviewing files that changed from the base of the PR and between ef0c7b1 and d8827b2.

📒 Files selected for processing (4)
  • .github/workflows/ci.yml
  • .github/workflows/codeql.yml
  • .github/workflows/govulncheck.yml
  • .github/workflows/release.yml

Comment thread .github/workflows/ci.yml
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/checkout@v7

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🔒 Security & Privacy | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
set -euo pipefail

echo "Checkout references in workflows:"
rg -n 'uses:\s*actions/checkout@' .github/workflows

echo
echo "persist-credentials settings in workflows:"
rg -n 'persist-credentials' .github/workflows || true

echo
echo "Resolving actions/checkout v7 tag via GitHub API..."
ref_json="$(curl -fsSL https://api.github.com/repos/actions/checkout/git/ref/tags/v7)"
obj_type="$(printf '%s' "$ref_json" | jq -r '.object.type')"
obj_url="$(printf '%s' "$ref_json" | jq -r '.object.url')"

if [[ "$obj_type" == "commit" ]]; then
  sha="$(printf '%s' "$ref_json" | jq -r '.object.sha')"
else
  tag_json="$(curl -fsSL "$obj_url")"
  sha="$(printf '%s' "$tag_json" | jq -r '.object.sha')"
fi

echo "Resolved actions/checkout@v7 commit SHA: $sha"

Repository: tphakala/go-autotask

Length of output: 668


🏁 Script executed:

#!/bin/bash
set -euo pipefail

# Try using git ls-remote to get the v7 tag commit SHA
echo "=== Attempting git ls-remote to resolve v7 commit SHA ==="
git ls-remote --tags https://github.com/actions/checkout | grep -E "refs/tags/v7\$|refs/tags/v7\^" || echo "Direct git ls-remote failed or tag not found"

echo
echo "=== Checking if checkout v7 is documented in GitHub releases ==="
# Alternative: Try to fetch from the web
curl -fsSL -I "https://github.com/actions/checkout/releases/tag/v7" 2>&1 | head -5 || echo "Could not fetch v7 release page"

Repository: tphakala/go-autotask

Length of output: 604


🌐 Web query:

actions/checkout v7 commit SHA pinned version GitHub security best practices

💡 Result:

As of June 22, 2026, actions/checkout v7 is the latest release, introduced on June 18, 2026, to address "pwn request" vulnerabilities [1][2][3]. Security Best Practices for v7 and Pinning: 1. Mandatory Pinning: GitHub and industry security standards strongly recommend pinning all GitHub Actions, including actions/checkout, to a full-length commit SHA [4][5][6]. While tags like @v7 are convenient, they are mutable and can be changed by an attacker or through repository compromise [4][7][6]. Pinning to an immutable SHA ensures that your workflow runs only the exact, audited code you expect [4][7]. 2. Recommended Syntax: Use a full-length commit SHA followed by a comment that specifies the version tag for readability and automated dependency management [8][6]. Example: - uses: actions/checkout@<FULL_SHA> # v7.0.0 3. Automated Updates: Pinning to a SHA does not mean manual maintenance. Use automated tools like Dependabot or Renovate. These tools are designed to handle SHA pins, automatically creating pull requests to update the SHA while maintaining your pinning pattern [9][10][6]. 4. Understanding v7 "Safer" Defaults: A major security improvement in v7 is that it now refuses to check out fork pull request code by default when triggered by pull_request_target or workflow_run events [1][11][12]. This prevents common "pwn request" attacks where untrusted code is executed with privileged GITHUB_TOKEN permissions [1][11][3]. - If your workflow legitimately requires checking out fork code (e.g., for certain testing or reporting scenarios), you must explicitly opt-in by setting the input allow-unsafe-pr-checkout: true [1][11][12]. - Note: GitHub has announced that on July 16, 2026, this security enforcement will be backported to all supported major versions of actions/checkout [3][12]. Workflows using floating tags (e.g., @v4) will inherit this behavior automatically, while those pinned to specific SHAs or minor versions will require manual upgrades to benefit from these changes [12]. Summary of Recommendations: - Always pin to the full 40-character commit SHA [4][6]. - Pair the SHA with a version tag in a comment [8][6]. - Use Dependabot or similar tools to manage updates [10][6]. - Review your use of pull_request_target; if you are impacted by the new v7 blocking behavior, evaluate if you can adopt safer patterns before manually opting out [1][12].

Citations:


Pin checkout to immutable commit SHA and disable credential persistence.

Lines 17 and 39 use the mutable tag @v7 instead of a pinned commit SHA. GitHub's official security hardening guidance mandates pinning to the full 40-character commit SHA to prevent supply-chain compromise via tag rewriting. Additionally, set persist-credentials: false for read-only checkout operations to avoid unnecessary token retention in local git config.

Suggested patch
-      - uses: actions/checkout@v7
+      - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
+        with:
+          persist-credentials: false

Apply the same fix to line 39.

📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
- uses: actions/checkout@v7
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false
🧰 Tools
🪛 zizmor (1.26.1)

[warning] 17-17: credential persistence through GitHub Actions artifacts (artipacked): does not set persist-credentials: false

(artipacked)


[error] 17-17: unpinned action reference (unpinned-uses): action is not pinned to a hash (required by blanket policy)

(unpinned-uses)

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.github/workflows/ci.yml at line 17, The checkout action on lines 17 and 39
uses the mutable tag `@v7` instead of being pinned to a specific commit SHA,
which creates a supply-chain security risk. Replace both instances of
`actions/checkout@v7` with `actions/checkout@` followed by the full 40-character
commit SHA for the v7 release. Additionally, add the `persist-credentials:
false` parameter to both checkout actions since they are read-only operations
and do not require credential persistence in the git config.

Source: Linters/SAST tools

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file github_actions Pull requests that update GitHub Actions code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants