1
0
mirror of https://github.com/goreleaser/goreleaser.git synced 2025-01-08 03:31:59 +02:00
goreleaser/.goreleaser.yml
Carlos Alexandro Becker e8ea231122
feat: allow to use nfpm packages in the docker pipe (#2003)
* feat: copy nfpms to docker image too

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>

* test: wip

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>

* fix: logs

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>

* test: fixes

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>

* test: improving

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>

* docs: deprecations and docker improvements

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>

* fix: revert .goreleaser.yml changes

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>

* test: fix

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>

* docs: fix syntax

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>

* docs: fixed deprecation warnings

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>

* test: fix

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>

* test: coverage

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>

* test: add one more test case

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>

* test: fix

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>

* test: fix

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>

Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2021-01-07 19:21:12 +00:00

149 lines
4.3 KiB
YAML

env:
- GO111MODULE=on
- GOPROXY=https://gocenter.io
before:
hooks:
- go mod download
- ./scripts/completions.sh
builds:
- env:
- CGO_ENABLED=0
goos:
- linux
- darwin
- windows
goarch:
- 386
- amd64
- arm
- arm64
mod_timestamp: '{{ .CommitTimestamp }}'
flags:
- -trimpath
ldflags:
- -s -w -X main.version={{.Version}} -X main.commit={{.Commit}} -X main.date={{ .CommitDate }} -X main.builtBy=goreleaser
checksum:
name_template: '{{ .ProjectName }}_checksums.txt'
changelog:
sort: asc
filters:
exclude:
- '^docs:'
- '^test:'
- Merge pull request
- Merge branch
- go mod tidy
dockers:
- image_templates:
- 'goreleaser/goreleaser:{{ .Tag }}-amd64'
- 'ghcr.io/goreleaser/goreleaser:{{ .Tag }}-amd64'
dockerfile: Dockerfile
use_buildx: true
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"
extra_files:
- scripts/entrypoint.sh
- image_templates:
- 'goreleaser/goreleaser:{{ .Tag }}-arm64'
- 'ghcr.io/goreleaser/goreleaser:{{ .Tag }}-arm64'
dockerfile: Dockerfile
use_buildx: true
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
extra_files:
- scripts/entrypoint.sh
docker_manifests:
- name_template: 'goreleaser/goreleaser:{{ .Tag }}'
image_templates:
- 'goreleaser/goreleaser:{{ .Tag }}-amd64'
- 'goreleaser/goreleaser:{{ .Tag }}-arm64'
- name_template: 'ghcr.io/goreleaser/goreleaser:{{ .Tag }}'
image_templates:
- 'ghcr.io/goreleaser/goreleaser:{{ .Tag }}-amd64'
- 'ghcr.io/goreleaser/goreleaser:{{ .Tag }}-arm64'
- name_template: 'goreleaser/goreleaser:latest'
image_templates:
- 'goreleaser/goreleaser:{{ .Tag }}-amd64'
- 'goreleaser/goreleaser:{{ .Tag }}-arm64'
- name_template: 'ghcr.io/goreleaser/goreleaser:latest'
image_templates:
- 'ghcr.io/goreleaser/goreleaser:{{ .Tag }}-amd64'
- 'ghcr.io/goreleaser/goreleaser:{{ .Tag }}-arm64'
archives:
- name_template: '{{ .ProjectName }}_{{ .Os }}_{{ .Arch }}{{ if .Arm }}v{{ .Arm }}{{ end }}'
replacements:
darwin: Darwin
linux: Linux
windows: Windows
386: i386
amd64: x86_64
format_overrides:
- goos: windows
format: zip
files:
- README.md
- LICENSE.md
- completions/*
brews:
- tap:
owner: goreleaser
name: homebrew-tap
folder: Formula
homepage: https://goreleaser.com
description: Deliver Go binaries as fast and easily as possible
license: MIT
test: |
system "#{bin}/goreleaser -v"
dependencies:
- name: go
install: |-
bin.install "goreleaser"
bash_completion.install "completions/goreleaser.bash" => "goreleaser"
zsh_completion.install "completions/goreleaser.zsh" => "_goreleaser"
fish_completion.install "completions/goreleaser.fish"
scoop:
bucket:
owner: goreleaser
name: scoop-bucket
homepage: https://goreleaser.com
description: Deliver Go binaries as fast and easily as possible
license: MIT
nfpms:
- file_name_template: '{{ .ProjectName }}_{{ .Arch }}{{ if .Arm }}v{{ .Arm }}{{ end }}'
homepage: https://goreleaser.com
description: Deliver Go binaries as fast and easily as possible
maintainer: Carlos Alexandro Becker <root@carlosbecker.com>
license: MIT
vendor: GoReleaser
formats:
- apk
- deb
- rpm
dependencies:
- git
recommends:
- golang
snapcrafts:
- name_template: '{{ .ProjectName }}_{{ .Arch }}{{ if .Arm }}v{{ .Arm }}{{ end }}'
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