-
Notifications
You must be signed in to change notification settings - Fork 3
/
.goreleaser.yml
234 lines (192 loc) · 6.86 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
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
before:
hooks:
- go mod tidy
- go install github.com/gobuffalo/packr/v2/[email protected]
- packr2
- go generate ./...
builds:
- env:
- CGO_ENABLED=0
goos:
- linux
- darwin
- windows
goarch:
- "386"
- amd64
- arm
- arm64
archives:
-
id: tango-archive
replacements:
windows: Windows
linux: Linux
darwin: macOS
amd64: 64-bit
386: 32-bit
format: zip
checksum:
name_template: "{{ .ProjectName }}-{{ .Tag }}-checksums.txt"
snapshot:
name_template: "{{ .ProjectName }}-{{ .Tag }}-next"
changelog:
sort: asc
filters:
exclude:
- '^doc:'
- '^test:'
- Merge pull request
- Merge branch
release:
github:
owner: roma-glushko
name: tango
prerelease: auto
# You can change the name of the GitHub release.
# Default is `{{.Tag}}`
name_template: "{{.ProjectName}}-v{{.Version}}"
disable: false
brews:
-
# Name template of the recipe
# Default to project name
name: tango
# IDs of the archives to use.
# Defaults to all.
ids:
- tango-archive
# NOTE: make sure the url_template, the token and given repo (github or gitlab) owner and name are from the
# same kind. We will probably unify this in the next major version like it is done with scoop.
# Github repository to push the tap to.
tap:
owner: roma-glushko
name: homebrew-tango
# Template for the url which is determined by the given Token (github or gitlab)
# Default for github is "https://github.com/<repo_owner>/<repo_name>/releases/download/{{ .Tag }}/{{ .ArtifactName }}"
# Default for gitlab is "https://gitlab.com/<repo_owner>/<repo_name>/uploads/{{ .ArtifactUploadHash }}/{{ .ArtifactName }}"
url_template: "https://github.com/roma-glushko/tango/releases/download/{{ .Tag }}/{{ .ArtifactName }}"
# Git author used to commit to the repository.
# Defaults are shown.
commit_author:
name: tango-release-bot
email: [email protected]
# Folder inside the repository to put the formula.
# Default is the root folder.
folder: Formula
# Caveats for the user of your binary.
# Default is empty.
caveats: "Tango is on the scene 🎉 Type `tango --help` to get started 💃💃💃"
# Your app's homepage.
# Default is empty.
homepage: "https://github.com/roma-glushko/tango"
# Your app's description.
# Default is empty.
description: "Tango is a command-line tool for dancing with access logs"
# Custom block for brew.
# Can be used to specify alternate downloads for devel or head releases.
# Default is empty.
custom_block: head "https://github.com/roma-glushko/tango.git"
# Packages your package depends on.
dependencies: []
# Packages that conflict with your package.
conflicts: []
plist: ''
# So you can `brew test` your formula.
# Default is empty.
test: system "#{bin}/tango --version"
# Custom install script for brew.
# Default is 'bin.install "program"'.
install: bin.install "tango"
snapcrafts:
-
# ID of the snapcraft config, must be unique.
# Defaults to "default".
id: tango-snapcraft
# You can change the name of the package.
# Default: `{{ .ProjectName }}_{{ .Version }}_{{ .Os }}_{{ .Arch }}{{ if .Arm }}v{{ .Arm }}{{ end }}`
name_template: "{{ .ProjectName }}_{{ .Version }}_{{ .Os }}_{{ .Arch }}"
# Replacements for GOOS and GOARCH in the package name.
# Keys should be valid GOOSs or GOARCHs.
# Values are the respective replacements.
# Default is empty.
replacements:
amd64: 64-bit
386: 32-bit
darwin: macOS
linux: Linux
# The name of the snap. This is optional.
# Default is project name.
name: tango
# Wether to publish the snap to the snapcraft store.
# Remember you need to `snapcraft login` first.
# Defaults to false.
publish: true
# Single-line elevator pitch for your amazing snap.
# 79 char long at most.
summary: "Command-line tool for dancing with access logs"
# This the description of your snap. You have a paragraph or two to tell the
# most important story about your snap. Keep it under 100 words though,
# we live in tweetspace and your description wants to look good in the snap
# store.
description: Tango is a dependency-free command-line tool for analyzing server access logs
# A guardrail to prevent you from releasing a snap to all your users before
# it is ready.
# `devel` will let you release only to the `edge` and `beta` channels in the
# store. `stable` will let you release also to the `candidate` and `stable`
# channels. More info about channels here:
# https://snapcraft.io/docs/reference/channels
grade: stable
# Snaps can be setup to follow three different confinement policies:
# `strict`, `devmode` and `classic`. A strict confinement where the snap
# can only read and write in its own namespace is recommended. Extra
# permissions for strict snaps can be declared as `plugs` for the app, which
# are explained later. More info about confinement here:
# https://snapcraft.io/docs/reference/confinement
confinement: strict
# Your app's license, based on SPDX license expressions: https://spdx.org/licenses
# Default is empty.
license: MIT
# A snap of type base to be used as the execution environment for this snap.
# Valid values are:
# * bare - Empty base snap;
# * core - Ubuntu Core 16;
# * core18 - Ubuntu Core 18.
# Default is empty.
base: core18
# Each binary built by GoReleaser is an app inside the snap. In this section
# you can declare extra details for those binaries. It is optional.
apps:
# The name of the app must be the same name as the binary built or the snapcraft name.
tango:
command: tango
# If your app requires extra permissions to work outside of its default
# confined space, declare them here.
# You can read the documentation about the available plugs and the
# things they allow:
# https://snapcraft.io/docs/reference/interfaces.
plugs: ["home", "network"]
scoop:
url_template: "https://github.com/roma-glushko/tango/releases/download/{{ .Tag }}/{{ .ArtifactName }}"
# Repository to push the app manifest to.
bucket:
owner: roma-glushko
name: scoop-tango
# Git author used to commit to the repository.
# Defaults are shown.
commit_author:
name: tango-release-bot
email: [email protected]
# Your app's homepage.
# Default is empty.
homepage: "https://github.com/roma-glushko/tango"
# Your app's description.
# Default is empty.
description: "Tango is a dependency-free command-line tool for analyzing server access logs"
# Your app's license
# Default is empty.
license: MIT
# Persist data between application updates
persist:
- "data"
- "config.toml"