-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.goreleaser.yaml
More file actions
121 lines (107 loc) · 2.96 KB
/
Copy path.goreleaser.yaml
File metadata and controls
121 lines (107 loc) · 2.96 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
version: 2
# sort tags by date, so that a final release tag will be chosen over a
# pre-release tag when they point to the same commit.
git:
tag_sort: "-creatordate"
builds:
- main: .
goos:
- darwin
- linux
- windows
goarch:
- amd64
- arm64
env:
- CGO_ENABLED=0
flags:
- -trimpath
ldflags:
- -s -w -X main.version={{.Version}} -X main.commit={{.ShortCommit}} -X main.buildDate={{.Date}}
mod_timestamp: "{{ .CommitTimestamp }}"
# replace per-arch macos binaries with a single universal binary
universal_binaries:
- replace: true
source:
enabled: true
sboms:
- id: archive
artifacts: archive
- id: source
artifacts: source
archives:
- name_template: >-
{{ .ProjectName }}-
{{- .Os | tolower }}-
{{- .Arch }}
{{- if .Arm }}v{{ .Arm }}{{ end }}
formats:
- tar.gz
format_overrides:
- goos: windows
formats:
- zip
checksum:
name_template: 'checksums.txt'
snapshot:
version_template: "{{ incpatch .Version }}-next"
release:
draft: false
prerelease: auto
mode: keep-existing
dockers_v2:
- images:
- index.docker.io/mccutchen/ghavm
- ghcr.io/mccutchen/ghavm
tags:
- "{{.Version}}"
- '{{ if not .Prerelease }}{{.Major}}.{{.Minor}}{{ end }}'
- '{{ if not .Prerelease }}latest{{ end }}'
platforms:
- linux/amd64
- linux/arm64
dockerfile: Dockerfile.release
sbom: true
labels:
org.opencontainers.image.created: "{{.Date}}"
org.opencontainers.image.revision: "{{.FullCommit}}"
org.opencontainers.image.version: "{{.Version}}"
org.opencontainers.image.source: "{{.GitURL}}"
org.opencontainers.image.url: "{{.GitURL}}"
org.opencontainers.image.title: "{{.ProjectName}}"
org.opencontainers.image.licenses: MIT
annotations:
org.opencontainers.image.created: "{{.Date}}"
org.opencontainers.image.revision: "{{.FullCommit}}"
org.opencontainers.image.version: "{{.Version}}"
org.opencontainers.image.source: "{{.GitURL}}"
org.opencontainers.image.url: "{{.GitURL}}"
org.opencontainers.image.title: "{{.ProjectName}}"
org.opencontainers.image.licenses: MIT
docker_signs:
- cmd: cosign
args:
- sign
- --yes
- "${artifact}@${digest}"
# '' is for images built by dockers_v2, per the docs:
# https://goreleaser.com/customization/sign/docker_sign/
artifacts: ''
notarize:
macos:
- enabled: '{{ isEnvSet "QUILL_SIGN_P12" }}'
sign:
certificate: "{{.Env.QUILL_SIGN_P12}}"
password: "{{.Env.QUILL_SIGN_PASSWORD}}"
notarize:
issuer_id: "{{.Env.QUILL_NOTARY_ISSUER}}"
key_id: "{{.Env.QUILL_NOTARY_KEY_ID}}"
key: "{{.Env.QUILL_NOTARY_KEY}}"
wait: true
# Apple rejects JWTs with ttl > 20m, quill sets token lifetime to
# this timeout + 2m.
timeout: 18m
changelog:
disable: true
announce:
skip: true