-
Notifications
You must be signed in to change notification settings - Fork 216
/
.goreleaser.yml
166 lines (137 loc) · 5.3 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
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
# yaml-language-server: $schema=https://goreleaser.com/static/schema-pro.json
version: 2
project_name: flipt
git:
tag_sort: semver
monorepo:
tag_prefix: v
builds:
- builder: prebuilt
goos:
- linux
- darwin
goarch:
- amd64
- arm64
goamd64:
- v1
prebuilt:
path: tmp/dist/flipt_{{ .Os }}_{{ .Arch }}{{ with .Amd64 }}_{{ . }}{{ end }}/flipt
binary: flipt
sboms:
- artifacts: archive
archives:
- id: main
name_template: >-
{{ .ProjectName }}_
{{- tolower .Os }}_
{{- if eq .Arch "amd64" }}x86_64
{{- else }}{{ .Arch }}{{ end }}
files:
- LICENSE
- CHANGELOG.md
- ./config/default.yml
checksum:
name_template: "checksums.txt"
release:
prerelease: auto # enable rc releases (e.g. v1.0.0-rc.1)
target_commitish: "{{ .Commit }}"
footer: |
## Installation
### Homebrew :beer:
```bash
brew install flipt-io/brew/flipt
```
### Docker Images :whale:
```bash
docker pull docker.flipt.io/flipt/flipt:v{{ .Tag }}
```
```bash
docker pull ghcr.io/flipt-io/flipt:v{{ .Tag }}
```
## Thank you!
We hope you :heart: this release! Feel free to open issues/discussions or reach out to us on Discord if you have any questions or feedback.
- [Discord](https://flipt.io/discord)
- [Github Discussions](https://github.com/flipt-io/flipt/discussions)
- [Github Issues](https://github.com/flipt-io/flipt/issues)
- [Newsletter](https://www.flipt.io/#newsletter)
snapshot:
version_template: "{{ .ShortCommit }}-snapshot"
nightly:
# Default is `{{ incpatch .Version }}-{{ .ShortCommit }}-nightly`.
version_template: "{{ incpatch .Version }}-nightly"
changelog:
disable: true
dockers:
- dockerfile: ./build/Dockerfile
use: buildx
goos: linux
goarch: amd64
image_templates:
- "{{ if .IsNightly }}flipt/flipt:v{{ incpatch .Version }}-nightly-amd64{{ else }}flipt/flipt:v{{ .Tag }}-amd64{{ end }}"
- "{{ if .IsNightly }}ghcr.io/flipt-io/flipt:v{{ incpatch .Version }}-nightly-amd64{{ else }}ghcr.io/flipt-io/flipt:v{{ .Tag }}-amd64{{ end }}"
build_flag_templates:
- "--platform=linux/amd64"
- "--label=org.opencontainers.image.created={{.Date}}"
- "--label=org.opencontainers.image.revision={{.FullCommit}}"
- "--label=org.opencontainers.image.version={{.Version}}"
extra_files:
- config/default.yml
- dockerfile: ./build/Dockerfile
use: buildx
goos: linux
goarch: arm64
image_templates:
- "{{ if .IsNightly }}flipt/flipt:v{{ incpatch .Version }}-nightly-arm64{{ else }}flipt/flipt:v{{ .Tag }}-arm64{{ end }}"
- "{{ if .IsNightly }}ghcr.io/flipt-io/flipt:v{{ incpatch .Version }}-nightly-arm64{{ else }}ghcr.io/flipt-io/flipt:v{{ .Tag }}-arm64{{ end }}"
build_flag_templates:
- "--platform=linux/arm64"
- "--label=org.opencontainers.image.created={{.Date}}"
- "--label=org.opencontainers.image.revision={{.FullCommit}}"
- "--label=org.opencontainers.image.version={{.Version}}"
extra_files:
- config/default.yml
docker_manifests:
- name_template: "{{ if .IsNightly }}flipt/flipt:v{{ incpatch .Version }}-nightly{{ else }}flipt/flipt:v{{ .Tag }}{{ end }}"
image_templates:
- "{{ if .IsNightly }}flipt/flipt:v{{ incpatch .Version }}-nightly-amd64{{ else }}flipt/flipt:v{{ .Tag }}-amd64{{ end }}"
- "{{ if .IsNightly }}flipt/flipt:v{{ incpatch .Version }}-nightly-arm64{{ else }}flipt/flipt:v{{ .Tag }}-arm64{{ end }}"
- name_template: "{{ if .IsNightly }}markphelps/flipt:v{{ incpatch .Version }}-nightly{{ else }}markphelps/flipt:v{{ .Tag }}{{ end }}" # TODO: deprecate
image_templates:
- "{{ if .IsNightly }}flipt/flipt:v{{ incpatch .Version }}-nightly-amd64{{ else }}flipt/flipt:v{{ .Tag }}-amd64{{ end }}"
- "{{ if .IsNightly }}flipt/flipt:v{{ incpatch .Version }}-nightly-arm64{{ else }}flipt/flipt:v{{ .Tag }}-arm64{{ end }}"
- name_template: "{{ if .IsNightly }}ghcr.io/flipt-io/flipt:v{{ incpatch .Version }}-nightly{{ else }}ghcr.io/flipt-io/flipt:v{{ .Tag }}{{ end }}"
image_templates:
- "{{ if .IsNightly }}ghcr.io/flipt-io/flipt:v{{ incpatch .Version }}-nightly-amd64{{ else }}ghcr.io/flipt-io/flipt:v{{ .Tag }}-amd64{{ end }}"
- "{{ if .IsNightly }}ghcr.io/flipt-io/flipt:v{{ incpatch .Version }}-nightly-arm64{{ else }}ghcr.io/flipt-io/flipt:v{{ .Tag }}-arm64{{ end }}"
announce:
discord:
enabled: true
slack:
enabled: true
channel: "#releases"
brews:
- name: flipt
homepage: https://flipt.io
description: Enterprise-ready, GitOps enabled, CloudNative feature management solution
license: GPL-3.0-only
directory: Formula
skip_upload: auto
install: |
bin.install "flipt"
output = Utils.popen_read("SHELL=bash #{bin}/flipt completion bash")
(bash_completion/"flipt").write output
output = Utils.popen_read("SHELL=zsh #{bin}/flipt completion zsh")
(zsh_completion/"_flipt").write output
post_install: |
(var/"log/flipt").mkpath
service: |
run [opt_bin/"flipt"]
environment_variables PATH: std_service_path_env
keep_alive true
error_log_path "#{var}/log/flipt/server-stderr.log"
log_path "#{var}/log/flipt/server-stdout.log"
repository:
owner: flipt-io
name: homebrew-brew
branch: main