-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.goreleaser.yaml
102 lines (96 loc) · 2.77 KB
/
.goreleaser.yaml
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
project_name: external-dns-openstack-webhook
before:
hooks:
- go mod tidy
- go mod download
builds:
- id: external-dns-openstack-webhook
dir: .
main: ./cmd/webhook/
binary: external-dns-openstack-webhook
env:
- CGO_ENABLED=0 # build a static binary without C dependencies
flags:
- -v
- -a
ldflags:
- -X main.version={{ .Version }} -X main.commit={{ .Commit }}
goos:
- darwin
- freebsd
- linux
goarch:
- amd64
- arm
- arm64
- riscv64
goarm:
- "5"
- "6"
- "7"
ignore:
- goos: darwin
goarch: arm
- goos: darwin
goarch: riscv64
dockers:
- ids:
- external-dns-openstack-webhook
image_templates:
- ghcr.io/inovex/{{ .ProjectName }}:{{ .Version }}-amd64
goos: linux
goarch: amd64
dockerfile: goreleaser.dockerfile
build_flag_templates:
- "--build-arg=BINARY_NAME={{ .ProjectName }}"
- "--platform=linux/amd64"
use: buildx
- ids:
- external-dns-openstack-webhook
image_templates:
- ghcr.io/inovex/{{ .ProjectName }}:{{ .Version }}-arm64
goos: linux
goarch: arm64
dockerfile: goreleaser.dockerfile
build_flag_templates:
- "--build-arg=BINARY_NAME={{ .ProjectName }}"
- "--platform=linux/arm64"
use: buildx
- ids:
- external-dns-openstack-webhook
image_templates:
- ghcr.io/inovex/{{ .ProjectName }}:{{ .Version }}-riscv64
goos: linux
goarch: riscv64
dockerfile: goreleaser.dockerfile
build_flag_templates:
- "--build-arg=BINARY_NAME={{ .ProjectName }}"
- "--platform=linux/riscv64"
use: buildx
docker_manifests:
- name_template: "ghcr.io/inovex/{{ .ProjectName }}:{{ .Version }}"
image_templates:
- "ghcr.io/inovex/{{ .ProjectName }}:{{ .Version }}-amd64"
- "ghcr.io/inovex/{{ .ProjectName }}:{{ .Version }}-arm64"
- "ghcr.io/inovex/{{ .ProjectName }}:{{ .Version }}-riscv64"
archives:
- name_template: "{{ .ProjectName }}-{{ .Version }}.{{ .Os }}-{{ .Arch }}{{ with .Arm }}v{{ . }}{{ end }}"
formats:
- tar.gz
wrap_in_directory: true
checksum:
name_template: "{{ .ProjectName }}-{{ .Version }}_checksums.txt"
algorithm: sha256
# Configuration for GitHub Releases
release:
github:
owner: inovex
name: external-dns-openstack-webhook
footer: |
## Docker Images
- ghcr.io/inovex/external-dns-openstack-webhook:{{ trimprefix .Tag "v" }} (universal, multi-platform)
- ghcr.io/inovex/external-dns-openstack-webhook:{{ trimprefix .Tag "v" }}-amd64
- ghcr.io/inovex/external-dns-openstack-webhook:{{ trimprefix .Tag "v" }}-arm64
- ghcr.io/inovex/external-dns-openstack-webhook:{{ trimprefix .Tag "v" }}-riscv64
prerelease: auto
replace_existing_draft: true