1919 api_changes : ${{ steps.changes.outputs.api_changes }}
2020 devservices_changes : ${{ steps.changes.outputs.devservices_changes }}
2121 steps :
22- - uses : actions/checkout@v6.0.2
22+ - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
2323
2424 - name : Check for backend file changes
2525 uses : getsentry/paths-filter@66f7f1844185eb7fb6738ea4ea59d74bb99199e5 # v2
3333 runs-on : ubuntu-latest
3434 timeout-minutes : 6
3535 steps :
36- - uses : actions/checkout@v6.0.2
36+ - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
3737 name : Checkout code
3838
3939 - uses : astral-sh/setup-uv@5a095e7a2014a4212f075830d4f7277575a9d098 # v7.3.1
5353 runs-on : ubuntu-latest
5454 timeout-minutes : 10
5555 steps :
56- - uses : actions/checkout@v6.0.2
56+ - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
5757 name : Checkout code
5858 - name : Internal github app token
5959 id : token
@@ -75,15 +75,15 @@ jobs:
7575 # NOTE: can't pass --only-dev yet since we're missing some mypy stub packages
7676 install-cmd : uv sync --frozen --active
7777
78- - uses : actions/cache@v5
78+ - uses : actions/cache@668228422ae6a00e4ad889ee87cd7109ec5666a7 # v5
7979 with :
8080 path : ~/.cache/pre-commit
8181 key : cache-epoch-1|${{ env.pythonLocation }}|${{ hashFiles('.pre-commit-config.yaml', 'uv.lock') }}
8282
8383 - name : Setup pre-commit
8484 run : pre-commit install-hooks
8585
86- - uses : getsentry/paths-filter@v2
86+ - uses : getsentry/paths-filter@66f7f1844185eb7fb6738ea4ea59d74bb99199e5 # v2
8787 id : files
8888 with :
8989 # Enable listing of files matching each filter.
@@ -110,7 +110,7 @@ jobs:
110110 # If working tree is dirty, commit and update if we have a token
111111 - name : Apply any pre-commit fixed files
112112 if : steps.token.outcome == 'success' && github.ref != 'refs/heads/master' && always()
113- uses : getsentry/action-github-commit@v2.1.0
113+ uses : getsentry/action-github-commit@5972d5f578ad77306063449e718c0c2a6fbc4ae1 # v2.1.0
114114 with :
115115 github-token : ${{ steps.token.outputs.token }}
116116
@@ -119,15 +119,19 @@ jobs:
119119 runs-on : ubuntu-latest
120120 timeout-minutes : 10
121121 steps :
122- - uses : actions/checkout@v6.0.2
122+ - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
123123 name : Checkout code
124+
124125 - name : Install protoc
125- uses : arduino/setup-protoc@v3
126+ uses : arduino/setup-protoc@c65c819552d16ad3c9b72d9dfd5ba5237b9c906b # v3
126127 with :
127128 repo-token : ${{ secrets.GITHUB_TOKEN }}
128- - uses : dtolnay/rust-toolchain@stable
129- with :
130- components : rustfmt
129+
130+ - name : Install Rust Toolchain
131+ run : |
132+ rustup toolchain install stable --profile minimal --no-self-update
133+ rustup component add clippy rustfmt --toolchain stable
134+
131135 - name : Run linter
132136 run : |
133137 make lint-rust format-rust-ci
@@ -137,7 +141,7 @@ jobs:
137141 runs-on : ubuntu-latest
138142 timeout-minutes : 10
139143 steps :
140- - uses : actions/checkout@v6.0.2
144+ - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
141145 name : Checkout code
142146
143147 - uses : astral-sh/setup-uv@5a095e7a2014a4212f075830d4f7277575a9d098 # v7.3.1
@@ -163,7 +167,7 @@ jobs:
163167 branch : ${{ steps.branch.outputs.branch }}
164168 steps :
165169 - name : Checkout code
166- uses : actions/checkout@v6.0.2
170+ uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
167171
168172 - name : Get branch name
169173 id : branch
@@ -188,7 +192,7 @@ jobs:
188192 # otherwise third-party contributors would have to provide a working,
189193 # authenticated GHCR, which seems impossible to ensure in the general
190194 # case.
191- uses : actions/upload-artifact@v7
195+ uses : actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7
192196 with :
193197 name : snuba-ci
194198 path : /tmp/snuba-ci.tar
@@ -200,11 +204,11 @@ jobs:
200204 timeout-minutes : 15
201205 steps :
202206 - name : Checkout code
203- uses : actions/checkout@v6.0.2
207+ uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
204208
205209 - name : Restore Docker dependency image cache
206210 id : cache-restore
207- uses : actions/cache/restore@v5
211+ uses : actions/cache/restore@668228422ae6a00e4ad889ee87cd7109ec5666a7 # v5
208212 with :
209213 path : /tmp/docker-deps
210214 key : docker-deps-${{ hashFiles('docker-compose.gcb.yml') }}-${{ github.run_id }}
@@ -237,7 +241,7 @@ jobs:
237241
238242 - name : Save Docker dependency image cache
239243 if : steps.load-pull.outputs.pulled == '1'
240- uses : actions/cache/save@v5
244+ uses : actions/cache/save@668228422ae6a00e4ad889ee87cd7109ec5666a7 # v5
241245 with :
242246 path : /tmp/docker-deps
243247 key : docker-deps-${{ hashFiles('docker-compose.gcb.yml') }}-${{ github.run_id }}
@@ -260,10 +264,10 @@ jobs:
260264 ]
261265 steps :
262266 - name : Checkout code
263- uses : actions/checkout@v6.0.2
267+ uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
264268
265269 - name : Download snuba-ci image from artifacts
266- uses : actions/download-artifact@v8
270+ uses : actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8
267271 with :
268272 name : snuba-ci
269273 path : /tmp
@@ -274,7 +278,7 @@ jobs:
274278 docker image ls -a
275279
276280 - name : Restore Docker dependency image cache
277- uses : actions/cache/restore@v5
281+ uses : actions/cache/restore@668228422ae6a00e4ad889ee87cd7109ec5666a7 # v5
278282 with :
279283 path : /tmp/docker-deps
280284 key : docker-deps-${{ hashFiles('docker-compose.gcb.yml') }}-${{ github.run_id }}
@@ -334,7 +338,7 @@ jobs:
334338
335339 - name : Upload test results to Codecov
336340 if : ${{ !cancelled() }}
337- uses : codecov/test-results-action@v1
341+ uses : codecov/test-results-action@0fa95f0e1eeaafde2c782583b36b28ad0d8c77d3 # v1
338342 with :
339343 token : ${{ secrets.CODECOV_TOKEN }}
340344
@@ -347,9 +351,9 @@ jobs:
347351 name : Front end tests for snuba admin
348352 runs-on : ubuntu-latest
349353 steps :
350- - uses : actions/checkout@v6.0.2
354+ - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
351355 name : Checkout code
352- - uses : volta-cli/action@v4
356+ - uses : volta-cli/action@5c175f92dea6f48441c436471e6479dbc192e194 # v4
353357 - name : Set up and run tests through yarn
354358 run : cd snuba/admin && yarn install && yarn run test --coverage
355359 - name : Upload to codecov
@@ -371,10 +375,10 @@ jobs:
371375
372376 steps :
373377 - name : Checkout code
374- uses : actions/checkout@v6.0.2
378+ uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
375379
376380 - name : Download snuba-ci image from artifacts
377- uses : actions/download-artifact@v8
381+ uses : actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8
378382 with :
379383 name : snuba-ci
380384 path : /tmp
@@ -385,7 +389,7 @@ jobs:
385389 docker image ls -a
386390
387391 - name : Checkout sentry
388- uses : actions/checkout@v6.0.2
392+ uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
389393 with :
390394 repository : getsentry/sentry
391395 path : sentry
@@ -477,10 +481,10 @@ jobs:
477481
478482 steps :
479483 - name : Checkout code
480- uses : actions/checkout@v6.0.2
484+ uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
481485
482486 - name : Download snuba-ci image from artifacts
483- uses : actions/download-artifact@v8
487+ uses : actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8
484488 with :
485489 name : snuba-ci
486490 path : /tmp
@@ -491,7 +495,7 @@ jobs:
491495 docker image ls -a
492496
493497 - name : Restore Docker dependency image cache
494- uses : actions/cache/restore@v5
498+ uses : actions/cache/restore@668228422ae6a00e4ad889ee87cd7109ec5666a7 # v5
495499 with :
496500 path : /tmp/docker-deps
497501 key : docker-deps-${{ hashFiles('docker-compose.gcb.yml') }}-${{ github.run_id }}
@@ -534,13 +538,13 @@ jobs:
534538 timeout-minutes : 15
535539 steps :
536540 - name : Checkout code
537- uses : actions/checkout@v6.0.2
541+ uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
538542
539543 - name : Set up Docker Buildx
540- uses : docker/setup-buildx-action@v3
544+ uses : docker/setup-buildx-action@8d2750c68a42422c14e847fe6c8ac0403b4cbd6f # v3
541545
542546 - name : Build distroless image
543- uses : docker/build-push-action@v6
547+ uses : docker/build-push-action@10e90e3645eae34f1e60eeb005ba3a3d33f178e8 # v6
544548 with :
545549 context : .
546550 target : application-distroless
@@ -577,7 +581,7 @@ jobs:
577581 needs : files-changed
578582 if : ${{ needs.files-changed.outputs.devservices_changes == 'true' }}
579583 steps :
580- - uses : actions/checkout@v6.0.2
584+ - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
581585 name : Checkout repository
582586
583587 - name : Get devservices version
0 commit comments