Skip to content

Commit 74ad6e6

Browse files
committed
Security hardening Phase 3: provenance, scorecard, concurrency guards
1 parent ef81f09 commit 74ad6e6

2 files changed

Lines changed: 50 additions & 1 deletion

File tree

.github/workflows/release.yml

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,14 @@ on:
55
tags:
66
- "v*"
77

8+
concurrency:
9+
group: release-${{ github.ref }}
10+
cancel-in-progress: false
11+
812
permissions:
913
contents: write
1014
id-token: write
15+
attestations: write
1116
security-events: write
1217
pull-requests: read
1318

@@ -76,6 +81,7 @@ jobs:
7681
app-id: ${{ vars.RELEASE_CLIENT_ID }}
7782
private-key: ${{ secrets.RELEASE_APP_PRIVATE_KEY }}
7883
repositories: homebrew-tap
84+
permission-contents: write
7985

8086
- name: Install cosign
8187
uses: sigstore/cosign-installer@faadad0cce49287aee09b3a48701e75088a2c6ad # v4.0.0
@@ -95,7 +101,7 @@ jobs:
95101
- name: Run GoReleaser
96102
uses: goreleaser/goreleaser-action@ec59f474b9834571250b370d4735c50f8e2d1e29 # v7
97103
with:
98-
version: '~> v2'
104+
version: 'v2.14.1'
99105
args: release --clean
100106
env:
101107
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -106,6 +112,11 @@ jobs:
106112
MACOS_NOTARY_KEY_ID: ${{ secrets.MACOS_NOTARY_KEY_ID }}
107113
MACOS_NOTARY_ISSUER_ID: ${{ secrets.MACOS_NOTARY_ISSUER_ID }}
108114

115+
- name: Attest build provenance
116+
uses: actions/attest-build-provenance@e8998f949152b193b063cb0ec769d69d929409be # v2
117+
with:
118+
subject-checksums-file: ./dist/checksums.txt
119+
109120
aur-publish:
110121
runs-on: ubuntu-latest
111122
needs: release

.github/workflows/scorecard.yml

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
name: OpenSSF Scorecard
2+
3+
on:
4+
push:
5+
branches: [master]
6+
schedule:
7+
- cron: '30 1 * * 6'
8+
workflow_dispatch:
9+
10+
permissions: read-all
11+
12+
jobs:
13+
analysis:
14+
runs-on: ubuntu-latest
15+
permissions:
16+
security-events: write
17+
id-token: write
18+
contents: read
19+
steps:
20+
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
21+
with:
22+
persist-credentials: false
23+
24+
- uses: ossf/scorecard-action@4eaacf0543bb3f2c246792bd56e8cdeffafb205a # v2.4.3
25+
with:
26+
results_file: results.sarif
27+
results_format: sarif
28+
publish_results: true
29+
30+
- uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
31+
with:
32+
name: SARIF file
33+
path: results.sarif
34+
retention-days: 5
35+
36+
- uses: github/codeql-action/upload-sarif@89a39a4e59826350b863aa6b6252a07ad50cf83e # v4
37+
with:
38+
sarif_file: results.sarif

0 commit comments

Comments
 (0)