-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.goreleaser.yaml
133 lines (119 loc) · 3.62 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
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
version: 2
project_name: stamp
before:
hooks:
- go mod tidy
- go generate ./...
- ./bin/build-completions.sh {{ .ProjectName }}
- ./bin/build-manpages.sh {{ .ProjectName }}
- ./bin/build-schema.sh {{ .ProjectName }}
- ./bin/build-docs.sh {{ .ProjectName }}
builds:
- env:
- CGO_ENABLED=0
goos:
- darwin
- linux
- windows
goarch:
- amd64
- arm64
# `flags`, `ldflags`, and `mod_timestamp` are configured for reproducible builds.
# See: https://goreleaser.com/customization/builds/#reproducible-builds
flags:
- -trimpath
ldflags:
- -s -w -X main.version={{.Version}} -X main.commit={{.Commit}} -X main.date={{.CommitDate}}
mod_timestamp: "{{ .CommitTimestamp }}"
archives:
- id: default
builds_info:
group: root
owner: root
files:
- README.md
- LICENSE
- src: build/completions/*
dst: completions
strip_parent: true
- src: build/manpages/*
dst: manpages
strip_parent: true
- src: build/schemas/*
dst: schemas
strip_parent: true
format: tar.gz
format_overrides:
- goos: windows
format: zip
brews:
- repository:
owner: twelvelabs
name: homebrew-tap
branch: main
directory: Formula
homepage: "https://github.com/twelvelabs/stamp"
description: "A project and file scaffolding tool"
license: "MIT"
install: |-
bin.install "stamp"
bash_completion.install "completions/stamp.bash" => "stamp"
zsh_completion.install "completions/stamp.zsh" => "_stamp"
fish_completion.install "completions/stamp.fish"
man1.install "manpages/stamp.1.gz"
test: |
system "#{bin}/stamp --version"
checksum:
name_template: "checksums.txt"
algorithm: sha256
changelog:
use: github
sort: asc
groups:
- title: New features
regexp: "^.*feat[(\\w)]*:+.*$"
order: 0
- title: Bug fixes
regexp: "^.*fix[(\\w)]*:+.*$"
order: 10
- title: Other work
order: 99
dockers:
- image_templates:
- "ghcr.io/twelvelabs/{{ .ProjectName }}:{{ .Tag }}-amd64"
build_flag_templates:
- "--pull"
- "--label=org.opencontainers.image.created={{.Date}}"
- "--label=org.opencontainers.image.name={{.ProjectName}}"
- "--label=org.opencontainers.image.revision={{.FullCommit}}"
- "--label=org.opencontainers.image.version={{.Version}}"
- "--label=org.opencontainers.image.source={{.GitURL}}"
- "--platform=linux/amd64"
goarch: amd64
use: buildx
- image_templates:
- "ghcr.io/twelvelabs/{{ .ProjectName }}:{{ .Tag }}-arm64"
build_flag_templates:
- "--pull"
- "--label=org.opencontainers.image.created={{.Date}}"
- "--label=org.opencontainers.image.name={{.ProjectName}}"
- "--label=org.opencontainers.image.revision={{.FullCommit}}"
- "--label=org.opencontainers.image.version={{.Version}}"
- "--label=org.opencontainers.image.source={{.GitURL}}"
- "--platform=linux/arm64"
goarch: arm64
use: buildx
docker_manifests:
- name_template: "ghcr.io/twelvelabs/{{ .ProjectName }}:{{ .Tag }}"
image_templates:
- "ghcr.io/twelvelabs/{{ .ProjectName }}:{{ .Tag }}-amd64"
- "ghcr.io/twelvelabs/{{ .ProjectName }}:{{ .Tag }}-arm64"
- name_template: "ghcr.io/twelvelabs/{{ .ProjectName }}:latest"
image_templates:
- "ghcr.io/twelvelabs/{{ .ProjectName }}:{{ .Tag }}-amd64"
- "ghcr.io/twelvelabs/{{ .ProjectName }}:{{ .Tag }}-arm64"
gomod:
proxy: true
report_sizes: true
snapshot:
version_template: "{{ incpatch .Version }}-next" # cspell: disable-line