Skip to content

Commit 828f6cc

Browse files
committed
feat: sign artifacts with cosign
1 parent f040c72 commit 828f6cc

File tree

3 files changed

+31
-0
lines changed

3 files changed

+31
-0
lines changed

.github/workflows/ci.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,9 @@ name: ci
33
on:
44
pull_request:
55

6+
permissions:
7+
id-token: write
8+
69
jobs:
710
ci:
811
runs-on: ubuntu-latest
@@ -22,6 +25,8 @@ jobs:
2225
- name: Tests
2326
run: |
2427
go test ./...
28+
- name: Install cosign
29+
uses: sigstore/cosign-installer@v2.0.0
2530
- name: Run GoReleaser
2631
uses: goreleaser/goreleaser-action@v2
2732
with:

.github/workflows/release.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ on:
88
permissions:
99
contents: write
1010
packages: write
11+
id-token: write
1112

1213
jobs:
1314
release:
@@ -31,6 +32,8 @@ jobs:
3132
uses: actions/setup-go@v2
3233
with:
3334
go-version: ^1.17
35+
- name: Install cosign
36+
uses: sigstore/cosign-installer@v2.0.0
3437
- name: Run GoReleaser
3538
uses: goreleaser/goreleaser-action@v2
3639
with:

.goreleaser.yaml

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ dockers:
3232
use: buildx
3333
build_flag_templates:
3434
- --platform=linux/arm64
35+
3536
docker_manifests:
3637
- name_template: ghcr.io/jsiebens/{{ .ProjectName }}:{{ .Version }}
3738
image_templates:
@@ -42,6 +43,28 @@ docker_manifests:
4243
- ghcr.io/jsiebens/{{ .ProjectName }}:{{ .Version }}-amd64
4344
- ghcr.io/jsiebens/{{ .ProjectName }}:{{ .Version }}-arm64
4445

46+
signs:
47+
- cmd: cosign
48+
env:
49+
- COSIGN_EXPERIMENTAL=1
50+
certificate: '${artifact}.pem'
51+
args:
52+
- sign-blob
53+
- '--output-certificate=${certificate}'
54+
- '--output-signature=${signature}'
55+
- '${artifact}'
56+
artifacts: checksum
57+
58+
docker_signs:
59+
- cmd: cosign
60+
env:
61+
- COSIGN_EXPERIMENTAL=1
62+
artifacts: all
63+
output: true
64+
args:
65+
- sign
66+
- '${artifact}'
67+
4568
archives:
4669
- format_overrides:
4770
- goos: windows

0 commit comments

Comments
 (0)