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:dep 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' - 'goreleaser/goreleaser:v{{ .Major }}.{{ .Minor }}-amd64' - 'ghcr.io/goreleaser/goreleaser:v{{ .Major }}.{{ .Minor }}-amd64' - 'goreleaser/goreleaser:latest-amd64' - 'ghcr.io/goreleaser/goreleaser:latest-amd64' dockerfile: Dockerfile binaries: - goreleaser 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 }}-arm64v8' - 'ghcr.io/goreleaser/goreleaser:{{ .Tag }}-arm64v8' - 'goreleaser/goreleaser:v{{ .Major }}.{{ .Minor }}-arm64v8' - 'ghcr.io/goreleaser/goreleaser:v{{ .Major }}.{{ .Minor }}-arm64v8' - 'goreleaser/goreleaser:latest-arm64v8' - 'ghcr.io/goreleaser/goreleaser:latest-arm64v8' dockerfile: Dockerfile binaries: - goreleaser 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/arm/v8" goarch: arm64 extra_files: - scripts/entrypoint.sh docker_manifests: - name_template: 'goreleaser/goreleaser:{{ .Tag }}' image_templates: - 'goreleaser/goreleaser:{{ .Tag }}-amd64' - 'goreleaser/goreleaser:{{ .Tag }}-arm64v8' - name_template: 'ghcr.io/goreleaser/goreleaser:{{ .Tag }}' image_templates: - 'ghcr.io/goreleaser/goreleaser:{{ .Tag }}-amd64' - 'ghcr.io/goreleaser/goreleaser:{{ .Tag }}-arm64v8' - name_template: 'goreleaser/goreleaser:v{{ .Major }}.{{ .Minor }}' image_templates: - 'goreleaser/goreleaser:v{{ .Major }}.{{ .Minor }}-amd64' - 'goreleaser/goreleaser:v{{ .Major }}.{{ .Minor }}-arm64v8' - name_template: 'ghcr.io/goreleaser/goreleaser:v{{ .Major }}.{{ .Minor }}' image_templates: - 'ghcr.io/goreleaser/goreleaser:v{{ .Major }}.{{ .Minor }}-amd64' - 'ghcr.io/goreleaser/goreleaser:v{{ .Major }}.{{ .Minor }}-arm64v8' - name_template: 'goreleaser/goreleaser:latest' image_templates: - 'goreleaser/goreleaser:latest-amd64' - 'goreleaser/goreleaser:latest-arm64v8' - name_template: 'ghcr.io/goreleaser/goreleaser:latest' image_templates: - 'ghcr.io/goreleaser/goreleaser:latest-amd64' - 'ghcr.io/goreleaser/goreleaser:latest-arm64v8' 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 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