Skip to content

Commit 82eebe6

Browse files
committed
ci: pin all GitHub actions by hash
GitHub [1] and zizmor [2] recommend that actions, especially third party actions, should be pinned by hash instead of tags since tags are mutable and can introduce vulnerabilities if a malicious actor gains access to the action repository [3]. Change all third party actions to use hash instead of tag. [1] https://docs.github.com/en/actions/reference/security/secure-use#using-third-party-actions [2] https://docs.zizmor.sh/audits/#unpinned-uses [3] https://nvd.nist.gov/vuln/detail/cve-2025-30066 Signed-off-by: Anuj Mittal <anuj.mittal@oss.qualcomm.com>
1 parent 324734e commit 82eebe6

File tree

4 files changed

+7
-7
lines changed

4 files changed

+7
-7
lines changed

.github/workflows/publish-results.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ jobs:
5959
private-key: ${{ secrets.TEST_REPORTING_APP_TOKEN }}
6060

6161
- name: Publish Test Results
62-
uses: EnricoMi/publish-unit-test-result-action@v2
62+
uses: EnricoMi/publish-unit-test-result-action@c950f6fb443cb5af20a377fd0dfaa78838901040 # v2.23.0
6363
if: |
6464
always()
6565
&& contains(steps.listfiles.outcome, 'success')

.github/workflows/repolinter.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,16 +19,16 @@ jobs:
1919

2020
- name: Verify repolinter config file is present
2121
id: check_files
22-
uses: andstor/file-existence-action@v3
22+
uses: andstor/file-existence-action@076e0072799f4942c8bc574a82233e1e4d13e9d6 # v3
2323
with:
2424
files: "repolint.json"
2525
- name: Run Repolinter with local repolint.json
2626
if: steps.check_files.outputs.files_exists == 'true'
27-
uses: todogroup/repolinter-action@v1
27+
uses: todogroup/repolinter-action@4d478dcd860571382da7d512d6dc6dd5f554fbb2 # v1.7.3
2828
with:
2929
config_file: "repolint.json"
3030
- name: Run Repolinter with default ruleset
3131
if: steps.check_files.outputs.files_exists == 'false'
32-
uses: todogroup/repolinter-action@v1
32+
uses: todogroup/repolinter-action@4d478dcd860571382da7d512d6dc6dd5f554fbb2 # v1.7.3
3333
with:
3434
config_url: "https://raw.githubusercontent.com/quic/.github/main/repolint.json"

.github/workflows/test-pr.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ jobs:
5858
echo "pr_number=$PR_NUMBER" >> $GITHUB_OUTPUT
5959
6060
- name: Comment on PR
61-
uses: thollander/actions-comment-pull-request@v3
61+
uses: thollander/actions-comment-pull-request@24bffb9b452ba05a4f3f77933840a6a841d1b32b # v3
6262
with:
6363
file-path: pr-comment.txt
6464
pr-number: ${{ steps.pr_comment_prep.outputs.pr_number }}

.github/workflows/test.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ jobs:
101101
save_result_as_artifact: true
102102
save_job_details: true
103103
result_file_name: "${{ matrix.target.result_file }}"
104-
- uses: mwasilew/github-action-matrix-outputs-write@v2
104+
- uses: mwasilew/github-action-matrix-outputs-write@f7202d2224ebed937f287a2e2813e47fddd12bc8 # v2
105105
if: always()
106106
id: out
107107
with:
@@ -118,7 +118,7 @@ jobs:
118118
outputs:
119119
boot_result: "${{ steps.print-boot-result.outputs.boot_result }}"
120120
steps:
121-
- uses: cloudposse/github-action-matrix-outputs-read@v1
121+
- uses: cloudposse/github-action-matrix-outputs-read@33cac12fa9282a7230a418d859b93fdbc4f27b5a # v1
122122
id: read
123123
with:
124124
matrix-step-name: "submit-boot-job"

0 commit comments

Comments
 (0)