forked from kumina/postfix_exporter
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.goreleaser.yml
135 lines (135 loc) · 3.34 KB
/
.goreleaser.yml
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
122
123
124
125
126
127
128
129
130
131
132
133
134
135
version: 2
project_name: postfix_exporter
before:
hooks:
- go mod download
builds:
- id: default
env:
- CGO_ENABLED=0
flags:
- -tags=nosystemd,nodocker
goos:
- linux
goarch:
- amd64
- arm64
- id: with-docker
goarch:
- amd64
- arm64
flags:
- -tags=nosystemd
env:
- CGO_ENABLED=0
- id: with-systemd
goarch:
- amd64
- arm64
flags:
- -tags=nodocker
env:
- CGO_ENABLED=1
- >-
{{- if eq .Arch "arm64" }}CC=/usr/bin/aarch64-linux-gnu-gcc{{- end }}
goos:
- linux
- id: aio
goos:
- linux
goarch:
- amd64
- arm64
env:
- CGO_ENABLED=1
- >-
{{- if eq .Arch "arm64" }}CC=/usr/bin/aarch64-linux-gnu-gcc{{- end }}
dockers:
- image_templates:
- "ghcr.io/hsn723/{{.ProjectName}}:{{ .Version }}-amd64"
use: buildx
ids:
- default
dockerfile: Dockerfile
extra_files:
- LICENSE
build_flag_templates:
- "--platform=linux/amd64"
- "--label=org.opencontainers.image.created={{.Date}}"
- "--label=org.opencontainers.image.revision={{.FullCommit}}"
- "--label=org.opencontainers.image.version={{.Version}}"
- image_templates:
- "ghcr.io/hsn723/{{.ProjectName}}:{{ .Version }}-arm64"
use: buildx
ids:
- default
goarch: arm64
dockerfile: Dockerfile
extra_files:
- LICENSE
build_flag_templates:
- "--platform=linux/arm64"
- "--label=org.opencontainers.image.created={{.Date}}"
- "--label=org.opencontainers.image.revision={{.FullCommit}}"
- "--label=org.opencontainers.image.version={{.Version}}"
docker_manifests:
- name_template: "ghcr.io/hsn723/{{.ProjectName}}:latest"
image_templates:
- "ghcr.io/hsn723/{{.ProjectName}}:{{ .Version }}-amd64"
- "ghcr.io/hsn723/{{.ProjectName}}:{{ .Version }}-arm64"
- name_template: "ghcr.io/hsn723/{{.ProjectName}}:{{ .Version }}"
image_templates:
- "ghcr.io/hsn723/{{.ProjectName}}:{{ .Version }}-amd64"
- "ghcr.io/hsn723/{{.ProjectName}}:{{ .Version }}-arm64"
- name_template: "ghcr.io/hsn723/{{.ProjectName}}:{{ .Major }}.{{ .Minor }}"
image_templates:
- "ghcr.io/hsn723/{{.ProjectName}}:{{ .Version }}-amd64"
- "ghcr.io/hsn723/{{.ProjectName}}:{{ .Version }}-arm64"
archives:
- id: default
builds:
- default
- id: with-docker
builds:
- with-docker
name_template: "{{ .ProjectName }}_docker_{{ .Version }}_{{ .Os }}_{{ .Arch }}"
- id: with-systemd
builds:
- with-systemd
name_template: "{{ .ProjectName }}_systemd_{{ .Version }}_{{ .Os }}_{{ .Arch }}"
- id: aio
builds:
- aio
name_template: "{{ .ProjectName }}_aio_{{ .Version }}_{{ .Os }}_{{ .Arch }}"
checksum:
name_template: 'checksums.txt'
snapshot:
version_template: "{{ .Tag }}-next"
changelog:
use: github-native
source:
enabled: true
sboms:
- id: archive
artifacts: archive
- id: source
artifacts: source
signs:
- cmd: cosign
certificate: '${artifact}.pem'
args:
- sign-blob
- '--yes'
- '--output-certificate=${certificate}'
- '--output-signature=${signature}'
- '${artifact}'
artifacts: all
output: true
docker_signs:
- cmd: cosign
artifacts: all
output: true
args:
- 'sign'
- '--yes'
- '${artifact}'