-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy path.goreleaser.yaml
145 lines (121 loc) · 4.2 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
134
135
136
137
138
139
140
141
142
143
144
# This is an example .goreleaser.yml file with some sensible defaults.
# Make sure to check the documentation at https://goreleaser.com
# The lines below are called `modelines`. See `:help modeline`
# Feel free to remove those if you don't want/need to use them.
# yaml-language-server: $schema=https://goreleaser.com/static/schema.json
# vim: set ts=2 sw=2 tw=0 fo=cnqoj
version: 2
before:
hooks:
# You may remove this if you don't use go modules.
- go mod tidy
# you may remove this if you don't need go generate
- go generate ./...
builds:
- env:
- CGO_ENABLED=0
goos:
- linux
- windows
- darwin
ldflags:
- -s -w -X main.version={{.Version}} -X main.commit={{.Commit}} -X main.date={{.Date}} -X main.builtBy=goreleaser
- -X github.com/vrypan/fargo/config.FARGO_VERSION={{.Version}}
archives:
- format: tar.gz
# this name template makes the OS and Arch compatible with the results of `uname`.
name_template: >-
{{ .ProjectName }}_
{{- title .Os }}_
{{- if eq .Arch "amd64" }}x86_64
{{- else if eq .Arch "386" }}i386
{{- else }}{{ .Arch }}{{ end }}
{{- if .Arm }}v{{ .Arm }}{{ end }}
# use zip for windows archives
format_overrides:
- goos: windows
format: zip
changelog:
sort: asc
filters:
exclude:
- "^docs:"
- "^test:"
# .goreleaser.yaml
brews:
-
# 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.
# URL which is determined by the given Token (github, gitlab or gitea).
#
# Default depends on the client.
# Templates: allowed.
url_template: "https://github.com/vrypan/fargo/releases/download/{{ .Tag }}/{{ .ArtifactName }}"
# Headers to include in the `url` stanza.
# This can be a more modern alternative to `download_strategy` in some
# cases.
url_headers:
- "Accept: application/octet-stream"
- 'Authorization: bearer #{ENV["HOMEBREW_GITHUB_API_TOKEN"]}'
# Git author used to commit to the repository.
commit_author:
name: Panagiotis Vryonis
email: [email protected]
# The project name and current git tag are used in the format string.
#
# Templates: allowed.
commit_msg_template: "Brew formula update for {{ .ProjectName }} version {{ .Tag }}"
# Directory inside the repository to put the formula.
directory: Formula
# Caveats for the user of your binary.
caveats: "fargo --help"
# Your app's homepage.
#
# Default: inferred from global metadata.
homepage: "https://github.com/vrypan/fargo"
# Your app's description.
#
# Templates: allowed.
# Default: inferred from global metadata.
description: "fargo is a CLI interface to Farcaster written in Go."
# SPDX identifier of your app's license.
#
# Default: inferred from global metadata.
license: "MIT"
# Setting this will prevent goreleaser to actually try to commit the updated
# formula - instead, the formula file will be stored on the dist directory
# only, leaving the responsibility of publishing it to the user.
# If set to auto, the release will not be uploaded to the homebrew tap
# in case there is an indicator for prerelease in the tag e.g. v1.0.0-rc1
#
# Templates: allowed.
skip_upload: auto
# Custom block for brew.
# Can be used to specify alternate downloads for devel or head releases.
# So you can `brew test` your formula.
#
# Template: allowed
test: |
system "#{bin}/fargo version"
# Repository to push the generated files to.
repository:
# Repository owner.
#
# Templates: allowed.
owner: vrypan
# Repository name.
#
# Templates: allowed.
name: homebrew-fargo
# Optionally a branch can be provided.
#
# Default: default repository branch.
# Templates: allowed.
branch: main
# Optionally a token can be provided, if it differs from the token
# provided to GoReleaser
#
# Templates: allowed.
# token: "{{ .Env.GITHUB_PERSONAL_AUTH_TOKEN }}"