Skip to content

Commit 073fca8

Browse files
authored
pin actions and include helper Makefile (#51)
1 parent 100ee17 commit 073fca8

File tree

2 files changed

+56
-11
lines changed

2 files changed

+56
-11
lines changed

.github/workflows/status-checks.yaml

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,8 @@ jobs:
1414
name: runner / misspell
1515
runs-on: ubuntu-latest
1616
steps:
17-
- uses: actions/checkout@v4
18-
- uses: reviewdog/action-misspell@v1
17+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # ratchet:actions/checkout@v4
18+
- uses: reviewdog/action-misspell@9daa94af4357dddb6fd3775de806bc0a8e98d3e4 # ratchet:reviewdog/action-misspell@v1
1919
with:
2020
level: info
2121
reporter: github-check
@@ -26,8 +26,8 @@ jobs:
2626
name: runner / typos
2727
runs-on: ubuntu-latest
2828
steps:
29-
- uses: actions/checkout@v4
30-
- uses: reviewdog/action-typos@v1
29+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # ratchet:actions/checkout@v4
30+
- uses: reviewdog/action-typos@627388e238f182b925d9acd151432f9b68f1d666 # ratchet:reviewdog/action-typos@v1
3131
with:
3232
level: info
3333
reporter: github-check
@@ -37,8 +37,8 @@ jobs:
3737
name: runner / markdownlint
3838
runs-on: ubuntu-latest
3939
steps:
40-
- uses: actions/checkout@v4
41-
- uses: reviewdog/action-markdownlint@v0
40+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # ratchet:actions/checkout@v4
41+
- uses: reviewdog/action-markdownlint@3667398db9118d7e78f7a63d10e26ce454ba5f58 # ratchet:reviewdog/action-markdownlint@v0
4242
with:
4343
level: info
4444
reporter: github-check
@@ -48,8 +48,8 @@ jobs:
4848
name: runner / shfmt
4949
runs-on: ubuntu-latest
5050
steps:
51-
- uses: actions/checkout@v4
52-
- uses: reviewdog/action-shfmt@v1
51+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # ratchet:actions/checkout@v4
52+
- uses: reviewdog/action-shfmt@d8f080930b9be5847b4f97e9f4122b81a82aaeac # ratchet:reviewdog/action-shfmt@v1
5353
with:
5454
level: info
5555
filter_mode: nofilter
@@ -60,9 +60,9 @@ jobs:
6060
name: runner / shellcheck
6161
runs-on: ubuntu-latest
6262
steps:
63-
- uses: actions/checkout@v4
63+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # ratchet:actions/checkout@v4
6464
- name: shellcheck
65-
uses: reviewdog/action-shellcheck@v1
65+
uses: reviewdog/action-shellcheck@5ebd09ddbe2ebb471646ce234c6c8dd18663ca7c # ratchet:reviewdog/action-shellcheck@v1
6666
with:
6767
level: info
6868
reporter: github-check
@@ -75,7 +75,7 @@ jobs:
7575
name: unit tests
7676
runs-on: ubuntu-latest
7777
steps:
78-
- uses: actions/checkout@v4
78+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # ratchet:actions/checkout@v4
7979
- run: cd test && ./test.sh
8080
env:
8181
TMPDIR: ${{ runner.temp }}

Makefile

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
.PHONY: check pin unpin update upgrade switch switch-tags test-actions
2+
3+
## The paths to search for yaml files.
4+
PATHS := actions .github/workflows
5+
## The yaml files from above paths up to 2 levels deep.
6+
FILES := $(foreach path, $(PATHS), $(wildcard $(path)/*.yaml $(path)/*/*.yaml))
7+
8+
## help: Show Makefile targets. This is the default target.
9+
help:
10+
@echo "Available Targets:\n"
11+
@egrep '^## .+?:' ${MAKEFILE_LIST} | column -t -s ':' | sed -e 's,^## ,,'
12+
13+
## check: Check for pinned uses values.
14+
check:
15+
@ratchet check $(FILES)
16+
17+
## pin: Pin any unpinned uses values.
18+
pin:
19+
@ratchet pin $(FILES)
20+
21+
## unpin: Unpin previously pinned items and revert back to previous value.
22+
unpin:
23+
@ratchet unpin $(FILES)
24+
25+
## update: Update pinned uses values to the latest commit matching the unpinned reference.
26+
update:
27+
@ratchet update $(FILES)
28+
29+
## upgrade: Upgrade pinned uses values to the latest available upstream reference commit.
30+
upgrade:
31+
@ratchet upgrade $(FILES)
32+
33+
## Set container_arch to the desired architecture for testing.
34+
set-container-arch:
35+
container_arch := linux/amd64
36+
ifeq ($(shell uname -s),Darwin)
37+
ifeq ($(shell uname -m),arm64)
38+
container_arch := linux/arm64
39+
endif
40+
endif
41+
42+
## test: Run github action "tests" job locally.
43+
test: set-container-arch
44+
act --container-architecture="$(container_arch)" \
45+
--job tests --rm

0 commit comments

Comments
 (0)