2023-06-14 04:01:11 +00:00
# yaml-language-server: $schema=https://goreleaser.com/static/schema.json
# vim: set ts=2 sw=2 tw=0 fo=jcroql
2019-03-03 14:12:22 -03:00
env :
- GO111MODULE=on
2021-08-24 22:24:46 -03:00
2018-10-28 21:54:15 -03:00
before :
hooks :
2021-03-02 21:29:31 -03:00
- go mod tidy
2020-11-04 23:12:49 -03:00
- ./scripts/completions.sh
2022-01-18 10:17:52 -03:00
- ./scripts/manpages.sh
2021-08-24 22:24:46 -03:00
2021-07-24 10:13:05 -03:00
snapshot :
2023-06-07 02:57:51 +00:00
name_template : "{{ incpatch .Version }}-next"
2021-08-24 22:24:46 -03:00
2021-03-30 21:06:25 -03:00
gomod :
proxy : true
2021-08-24 22:24:46 -03:00
2023-04-23 20:27:16 -03:00
report_sizes : true
2023-08-27 15:57:03 -03:00
git :
ignore_tags :
2023-09-18 12:59:02 +00:00
- "{{ if not .IsNightly }}nightly{{ end }}"
2023-08-27 15:57:03 -03:00
2023-07-15 16:53:52 -03:00
metadata :
mod_timestamp : "{{ .CommitTimestamp }}"
2017-06-27 19:20:08 -03:00
builds :
2023-06-07 02:57:51 +00:00
- env :
- CGO_ENABLED=0
goos :
- linux
- darwin
- windows
goarch :
- "386"
- amd64
- arm
- arm64
- ppc64
goarm :
- "7"
ignore :
- goos : windows
goarch : arm
mod_timestamp : "{{ .CommitTimestamp }}"
flags :
- -trimpath
ldflags :
- -s -w -X main.version={{.Version}} -X main.commit={{.Commit}} -X main.date={{ .CommitDate }} -X main.builtBy=goreleaser -X main.treeState={{ .IsGitDirty }}
2021-08-24 22:24:46 -03:00
2021-10-12 14:55:43 -03:00
universal_binaries :
2023-06-07 02:57:51 +00:00
- replace : false
2021-10-12 14:55:43 -03:00
2023-05-05 04:26:12 +00:00
# temporarely disables until we add better filters for platforms et al, and test more.
# upx:
# - enabled: true
2023-05-01 21:22:05 -03:00
2017-08-27 20:45:33 -03:00
checksum :
2023-06-07 02:57:51 +00:00
name_template : "checksums.txt"
2021-08-24 22:24:46 -03:00
2020-12-30 17:37:12 -03:00
changelog :
2017-10-20 15:54:43 -02:00
sort : asc
2021-10-04 09:32:30 -03:00
use : github
2017-10-18 09:43:18 -02:00
filters :
exclude :
2023-06-07 02:57:51 +00:00
- "^test:"
- "^chore"
- "merge conflict"
- Merge pull request
- Merge remote-tracking branch
- Merge branch
- go mod tidy
2021-11-23 22:29:47 -03:00
groups :
2022-06-26 22:00:23 -03:00
- title : Dependency updates
2022-11-07 12:28:52 +00:00
regexp : '^.*?(feat|fix)\(deps\)!?:.+$'
2022-06-26 22:00:23 -03:00
order : 300
2023-06-07 02:57:51 +00:00
- title : "New Features"
2022-11-07 12:28:52 +00:00
regexp : '^.*?feat(\([[:word:]]+\))??!?:.+$'
2022-06-26 22:00:23 -03:00
order : 100
2023-06-07 02:57:51 +00:00
- title : "Security updates"
2023-03-10 10:27:51 -03:00
regexp : '^.*?sec(\([[:word:]]+\))??!?:.+$'
order : 150
2023-06-07 02:57:51 +00:00
- title : "Bug fixes"
2022-11-07 12:28:52 +00:00
regexp : '^.*?fix(\([[:word:]]+\))??!?:.+$'
2022-06-26 22:00:23 -03:00
order : 200
2023-06-07 02:57:51 +00:00
- title : "Documentation updates"
2022-11-07 12:28:52 +00:00
regexp : ^.*?doc(\([[:word:]]+\))??!?:.+$
2022-06-26 22:00:23 -03:00
order : 400
2023-06-07 02:57:51 +00:00
- title : "Build process updates"
2023-02-02 21:07:38 -03:00
regexp : ^.*?build(\([[:word:]]+\))??!?:.+$
order : 400
2021-11-23 22:29:47 -03:00
- title : Other work
2022-06-26 22:00:23 -03:00
order : 9999
2018-05-13 16:13:48 -03:00
dockers :
2023-06-07 02:57:51 +00:00
- image_templates :
2023-08-02 23:17:03 -03:00
- "goreleaser/goreleaser:v{{ .Version }}-amd64"
- "ghcr.io/goreleaser/goreleaser:v{{ .Version }}-amd64"
2023-06-07 02:57:51 +00:00
dockerfile : Dockerfile
use : buildx
build_flag_templates :
- "--pull"
- "--label=io.artifacthub.package.readme-url=https://raw.githubusercontent.com/goreleaser/goreleaser/main/README.md"
- "--label=io.artifacthub.package.logo-url=https://goreleaser.com/static/avatar.png"
- '--label=io.artifacthub.package.maintainers=[{"name":"Carlos Alexandro Becker","email":"carlos@carlosbecker.dev"}]'
- "--label=io.artifacthub.package.license=MIT"
- "--label=org.opencontainers.image.description=Deliver Go binaries as fast and easily as possible"
- "--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"
extra_files :
- scripts/entrypoint.sh
- image_templates :
2023-08-02 23:17:03 -03:00
- "goreleaser/goreleaser:v{{ .Version }}-arm64"
- "ghcr.io/goreleaser/goreleaser:v{{ .Version }}-arm64"
2023-06-07 02:57:51 +00:00
dockerfile : Dockerfile
use : buildx
build_flag_templates :
- "--pull"
- "--label=io.artifacthub.package.readme-url=https://raw.githubusercontent.com/goreleaser/goreleaser/main/README.md"
- "--label=io.artifacthub.package.logo-url=https://goreleaser.com/static/avatar.png"
- '--label=io.artifacthub.package.maintainers=[{"name":"Carlos Alexandro Becker","email":"carlos@carlosbecker.dev"}]'
- "--label=io.artifacthub.package.license=MIT"
- "--label=org.opencontainers.image.description=Deliver Go binaries as fast and easily as possible"
- "--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
extra_files :
- scripts/entrypoint.sh
2021-08-24 22:24:46 -03:00
2020-11-28 16:26:37 -03:00
docker_manifests :
2023-08-02 23:17:03 -03:00
- name_template : "goreleaser/goreleaser:v{{ .Version }}"
2023-06-07 02:57:51 +00:00
image_templates :
2023-08-02 23:17:03 -03:00
- "goreleaser/goreleaser:v{{ .Version }}-amd64"
- "goreleaser/goreleaser:v{{ .Version }}-arm64"
- name_template : "ghcr.io/goreleaser/goreleaser:v{{ .Version }}"
2023-06-07 02:57:51 +00:00
image_templates :
2023-08-02 23:17:03 -03:00
- "ghcr.io/goreleaser/goreleaser:v{{ .Version }}-amd64"
- "ghcr.io/goreleaser/goreleaser:v{{ .Version }}-arm64"
- name_template : "{{ if not .IsNightly }}goreleaser/goreleaser:latest{{ end }}"
2023-06-07 02:57:51 +00:00
image_templates :
2023-08-02 23:17:03 -03:00
- "goreleaser/goreleaser:v{{ .Version }}-amd64"
- "goreleaser/goreleaser:v{{ .Version }}-arm64"
- name_template : "{{ if not .IsNightly }}ghcr.io/goreleaser/goreleaser:latest{{ end }}"
2023-06-07 02:57:51 +00:00
image_templates :
2023-08-02 23:17:03 -03:00
- "ghcr.io/goreleaser/goreleaser:v{{ .Version }}-amd64"
- "ghcr.io/goreleaser/goreleaser:v{{ .Version }}-arm64"
2021-08-24 22:24:46 -03:00
2019-04-16 10:19:15 -03:00
archives :
2022-11-25 15:26:14 -03:00
- name_template : >-
2023-08-03 12:33:02 +00:00
{{- .ProjectName }}_
2022-11-25 15:26:14 -03:00
{{- title .Os }}_
{{- if eq .Arch "amd64" }}x86_64
{{- else if eq .Arch "386" }}i386
{{- else }}{{ .Arch }}{{ end }}
2023-08-03 12:33:02 +00:00
{{- if .Arm }}v{{ .Arm }}{{ end -}}
2019-04-16 10:19:15 -03:00
format_overrides :
2023-06-07 02:57:51 +00:00
- goos : windows
format : zip
2022-12-14 12:16:03 -03:00
builds_info :
group : root
owner : root
2020-11-04 23:12:49 -03:00
files :
- README.md
- LICENSE.md
- completions/*
2022-01-19 10:03:46 -03:00
- manpages/*
2021-08-24 22:24:46 -03:00
2019-08-13 13:48:53 -03:00
brews :
2023-06-14 04:01:11 +00:00
- repository :
2019-08-13 13:48:53 -03:00
owner : goreleaser
name : homebrew-tap
folder : Formula
2021-12-21 14:21:15 -03:00
goarm : "7"
2023-06-07 02:57:51 +00:00
homepage : https://goreleaser.com
2019-08-13 13:48:53 -03:00
description : Deliver Go binaries as fast and easily as possible
2020-11-26 14:06:47 +01:00
license : MIT
2019-08-13 13:48:53 -03:00
test : |
system "#{bin}/goreleaser -v"
2020-05-22 09:50:34 -03:00
dependencies :
2023-06-07 02:57:51 +00:00
- name : go
type : optional
- name : git
2021-10-26 23:04:59 -03:00
conflicts :
2023-06-07 02:57:51 +00:00
- goreleaser-pro
2023-07-30 03:03:54 +00:00
extra_install : |-
2020-11-04 23:12:49 -03:00
bash_completion.install "completions/goreleaser.bash" => "goreleaser"
zsh_completion.install "completions/goreleaser.zsh" => "_goreleaser"
fish_completion.install "completions/goreleaser.fish"
2022-01-18 10:17:52 -03:00
man1.install "manpages/goreleaser.1.gz"
2021-08-24 22:24:46 -03:00
2023-05-25 23:07:10 -03:00
nix :
- name : goreleaser
repository :
owner : goreleaser
name : nur
2023-06-07 02:57:51 +00:00
homepage : https://goreleaser.com
2023-05-25 23:07:10 -03:00
description : Deliver Go binaries as fast and easily as possible
2023-06-29 00:46:08 -03:00
path : pkgs/goreleaser/default.nix
2023-05-25 23:07:10 -03:00
license : mit
2023-07-30 02:34:15 +00:00
extra_install : |-
2023-05-25 23:07:10 -03:00
installManPage ./manpages/goreleaser.1.gz
installShellCompletion ./completions/*
2023-06-14 23:59:55 -03:00
winget :
- name : goreleaser
publisher : goreleaser
license : MIT
homepage : https://goreleaser.com
short_description : Deliver Go binaries as fast and easily as possible
repository :
owner : goreleaser
name : winget-pkgs
2023-06-29 13:27:33 +00:00
branch : "goreleaser-{{.Version}}"
2023-06-14 23:59:55 -03:00
pull_request :
enabled : true
2023-06-15 03:19:58 +00:00
draft : true
2023-06-14 23:59:55 -03:00
base :
owner : microsoft
name : winget-pkgs
branch : master
2022-01-20 14:59:39 -03:00
aurs :
2023-06-07 02:57:51 +00:00
- homepage : https://goreleaser.com
2022-01-20 14:59:39 -03:00
description : Deliver Go binaries as fast and easily as possible
maintainers :
2023-06-07 02:57:51 +00:00
- "Fernandez Ludovic <lfernandez dot dev at gmail dot com>"
- "Carlos Alexandro Becker <carlos at becker dot software>"
2022-01-20 14:59:39 -03:00
license : MIT
2023-06-07 02:57:51 +00:00
private_key : "{{ .Env.AUR_KEY }}"
git_url : "ssh://aur@aur.archlinux.org/goreleaser-bin.git"
2022-01-20 14:59:39 -03:00
package : |-
# bin
install -Dm755 "./goreleaser" "${pkgdir}/usr/bin/goreleaser"
# license
install -Dm644 "./LICENSE.md" "${pkgdir}/usr/share/licenses/goreleaser/LICENSE"
# completions
mkdir -p "${pkgdir}/usr/share/bash-completion/completions/"
mkdir -p "${pkgdir}/usr/share/zsh/site-functions/"
mkdir -p "${pkgdir}/usr/share/fish/vendor_completions.d/"
install -Dm644 "./completions/goreleaser.bash" "${pkgdir}/usr/share/bash-completion/completions/goreleaser"
install -Dm644 "./completions/goreleaser.zsh" "${pkgdir}/usr/share/zsh/site-functions/_goreleaser"
install -Dm644 "./completions/goreleaser.fish" "${pkgdir}/usr/share/fish/vendor_completions.d/goreleaser.fish"
# man pages
install -Dm644 "./manpages/goreleaser.1.gz" "${pkgdir}/usr/share/man/man1/goreleaser.1.gz"
2023-04-30 21:29:36 -03:00
scoops :
2023-06-14 04:01:11 +00:00
- repository :
2023-04-30 21:29:36 -03:00
owner : goreleaser
name : scoop-bucket
folder : bucket
2023-06-07 02:57:51 +00:00
homepage : https://goreleaser.com
2023-04-30 21:29:36 -03:00
description : Deliver Go binaries as fast and easily as possible
license : MIT
2021-08-24 22:24:46 -03:00
2019-05-07 06:59:53 -03:00
nfpms :
2023-06-07 02:57:51 +00:00
- file_name_template : "{{ .ConventionalFileName }}"
2021-06-21 02:26:17 +00:00
id : packages
2023-06-07 02:57:51 +00:00
homepage : https://goreleaser.com
2022-02-05 18:02:06 -03:00
description : |-
Deliver Go binaries as fast and easily as possible.
GoReleaser allows you to release easily build, package, publish and
announce to several places at one go.
maintainer : Carlos Alexandro Becker <carlos@becker.software>
2019-05-07 06:59:53 -03:00
license : MIT
vendor : GoReleaser
2022-02-05 18:02:06 -03:00
bindir : /usr/bin
section : utils
2021-01-08 18:01:47 -03:00
contents :
- src : ./completions/goreleaser.bash
2022-02-05 18:02:06 -03:00
dst : /usr/share/bash-completion/completions/goreleaser
file_info :
mode : 0644
2021-01-08 18:01:47 -03:00
- src : ./completions/goreleaser.fish
2022-09-15 01:29:47 -03:00
dst : /usr/share/fish/vendor_completions.d/goreleaser.fish
2022-02-05 18:02:06 -03:00
file_info :
mode : 0644
2021-01-08 18:01:47 -03:00
- src : ./completions/goreleaser.zsh
2023-06-07 02:57:51 +00:00
dst : /usr/share/zsh/vendor-completions/_goreleaser
2022-02-05 18:02:06 -03:00
file_info :
mode : 0644
2022-01-18 10:17:52 -03:00
- src : ./manpages/goreleaser.1.gz
dst : /usr/share/man/man1/goreleaser.1.gz
2022-02-05 18:02:06 -03:00
file_info :
mode : 0644
- src : ./LICENSE.md
dst : /usr/share/doc/goreleaser/copyright
file_info :
mode : 0644
2019-05-07 06:59:53 -03:00
formats :
2023-06-07 02:57:51 +00:00
- apk
- deb
- rpm
- archlinux
2019-05-07 06:59:53 -03:00
dependencies :
2023-06-07 02:57:51 +00:00
- git
2020-05-23 14:28:55 -03:00
recommends :
2023-06-07 02:57:51 +00:00
- golang
2022-02-09 11:40:51 -03:00
deb :
lintian_overrides :
- statically-linked-binary
- changelog-file-missing-in-native-package
2021-08-24 22:24:46 -03:00
2019-08-13 13:48:53 -03:00
snapcrafts :
2023-06-07 02:57:51 +00:00
- name_template : "{{ .ProjectName }}_{{ .Arch }}{{ if .Arm }}v{{ .Arm }}{{ end }}"
2019-08-13 13:48:53 -03:00
summary : Deliver Go binaries as fast and easily as possible
description : |
GoReleaser builds Go binaries for several platforms, creates a GitHub
release and then pushes a Homebrew formula to a repository. All that
wrapped in your favorite CI.
grade : stable
confinement : classic
publish : true
2023-08-03 09:17:26 -03:00
disable : "{{ if .IsNightly }}true{{ end }}"
2021-06-21 02:26:17 +00:00
2021-12-11 22:21:51 -05:00
sboms :
- artifacts : archive
2021-08-24 11:30:39 -03:00
signs :
2023-06-07 02:57:51 +00:00
- cmd : cosign
certificate : "${artifact}.pem"
output : true
artifacts : checksum
args :
- sign-blob
- "--output-certificate=${certificate}"
- "--output-signature=${signature}"
- "${artifact}"
- --yes
2021-08-24 11:30:39 -03:00
docker_signs :
2023-06-07 02:57:51 +00:00
- cmd : cosign
artifacts : manifests
output : true
args :
- "sign"
- "${artifact}@${digest}"
- --yes
2021-08-24 11:30:39 -03:00
2021-06-21 02:26:17 +00:00
publishers :
- name : fury.io
ids :
2023-06-07 02:57:51 +00:00
- packages
2021-06-26 22:16:54 +00:00
env :
2023-06-07 02:57:51 +00:00
- "FURY_TOKEN={{ .Env.FURY_TOKEN }}"
2021-06-21 02:26:17 +00:00
cmd : ./scripts/fury-upload.sh {{ .ArtifactName }}
2023-08-08 22:43:09 -03:00
disable : "{{ if .IsNightly }}true{{ end }}"
2021-06-21 02:26:17 +00:00
2021-11-21 12:34:28 -03:00
milestones :
- close : true
2021-04-21 13:46:16 -03:00
release :
2023-08-09 13:12:18 +00:00
name_template : "v{{ .Version }}"
2021-05-30 21:53:40 -03:00
footer : |
2021-11-25 22:37:48 -03:00
**Full Changelog** : https://github.com/goreleaser/goreleaser/compare/{{ .PreviousTag }}...{{ .Tag }}
2021-11-24 09:12:24 -03:00
2023-05-19 19:33:37 +00:00
## Helping out
2021-05-30 21:53:40 -03:00
2023-05-19 19:33:37 +00:00
This release is only possible thanks to **all** the support of some **awesome people**!
Want to be one of them?
You can [sponsor](https://goreleaser.com/sponsors/), get a [Pro License](https://goreleaser.com/pro) or [contribute with code](https://goreleaser.com/contributing).
## Where to go next?
2022-10-23 15:19:31 -03:00
2023-05-19 19:33:37 +00:00
* Find examples and commented usage of all options in our [website](https://goreleaser.com/intro/).
* Reach out on [Discord](https://discord.gg/RGEBtg8vQ6) and [Twitter](https://twitter.com/goreleaser)!
<a href="https://goreleaser.com"><img src="https://raw.githubusercontent.com/goreleaser/artwork/master/opencollective-header.png" with="100%" alt="GoReleaser logo"></a>
2021-05-30 21:53:40 -03:00
2021-05-25 03:21:09 +00:00
announce :
twitter :
2023-02-02 21:06:46 -03:00
enabled : false
2023-06-07 02:57:51 +00:00
message_template : "GoReleaser {{ .Tag }} is out! Check it out: https://github.com/goreleaser/goreleaser/releases/tag/{{ .Tag }}"
2021-09-23 15:33:18 -03:00
2022-11-17 21:42:43 -03:00
mastodon :
enabled : true
2023-06-07 02:57:51 +00:00
message_template : "#GoReleaser {{ .Tag }} is out! Check it out: https://github.com/goreleaser/goreleaser/releases/tag/{{ .Tag }}"
2022-11-20 15:31:06 -03:00
server : https://fosstodon.org
2022-11-17 21:42:43 -03:00
2021-09-23 15:33:18 -03:00
discord :
enabled : true
2023-06-07 02:57:51 +00:00
message_template : "GoReleaser {{ .Tag }} is out! Check it out: https://github.com/goreleaser/goreleaser/releases/tag/{{ .Tag }}"