pomerium/.github/goreleaser.yaml
2020-09-28 13:33:35 -04:00

277 lines
7.5 KiB
YAML

project_name: pomerium
release:
prerelease: auto
github:
owner: pomerium
name: pomerium
name_template: "v{{.Version}}"
env:
- GO111MODULE=on
- CGO_ENABLED=0
before:
hooks:
- go mod download
- make build-deps
builds:
- id: pomerium
main: cmd/pomerium/main.go
binary: pomerium
goarch:
- amd64
- arm64
goos:
- linux
- darwin
ignore:
- goos: darwin
goarch: arm64
ldflags:
- -s -w
- -X github.com/pomerium/pomerium/internal/version.Version={{.Version}}
- -X github.com/pomerium/pomerium/internal/version.GitCommit={{.ShortCommit}}
- -X github.com/pomerium/pomerium/internal/version.BuildMeta={{.Timestamp}}
- -X github.com/pomerium/pomerium/internal/version.ProjectName=pomerium
- -X github.com/pomerium/pomerium/internal/version.ProjectURL=https://wwww.pomerium.io
hooks:
post:
- cmd: ./scripts/embed-envoy.bash {{ .Path }}
env: # e.g. darwin_amd64
- TARGET={{ .Target }}
- id: pomerium-cli
main: ./cmd/pomerium-cli
binary: pomerium-cli
goarch:
- amd64
- arm
- arm64
goos:
- linux
- darwin
- windows
- freebsd
goarm:
- 6
- 7
ignore:
- goos: freebsd
goarch: arm64
- goos: freebsd
goarch: arm
ldflags:
- -s -w
- -X github.com/pomerium/pomerium/internal/version.Version={{.Version}}
- -X github.com/pomerium/pomerium/internal/version.GitCommit={{.ShortCommit}}
- -X github.com/pomerium/pomerium/internal/version.BuildMeta={{.Timestamp}}
- -X github.com/pomerium/pomerium/internal/version.ProjectName=pomerium
- -X github.com/pomerium/pomerium/internal/version.ProjectURL=https://wwww.pomerium.io
archives:
- name_template: "{{ .ProjectName }}-{{ .Os }}-{{ .Arch }}{{ if .Arm }}v{{ .Arm }}{{ end }}"
id: pomerium
builds:
- pomerium
files:
- none*
format_overrides:
- goos: windows
format: zip
- name_template: "{{ .ProjectName }}-cli-{{ .Os }}-{{ .Arch }}{{ if .Arm }}v{{ .Arm }}{{ end }}"
id: pomerium-cli
builds:
- pomerium-cli
files:
- none*
format_overrides:
- goos: windows
format: zip
checksum:
name_template: "{{ .ProjectName }}_checksums.txt"
snapshot:
name_template: "{{ .Tag }}+next"
dockers:
- image_templates:
- "pomerium/pomerium:{{ .Tag }}"
dockerfile: .github/Dockerfile-release
binaries:
- pomerium
- pomerium-cli
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}}"
- "--label=repository=http://github.com/pomerium/pomerium"
- "--label=homepage=http://www.pomerium.io"
- image_templates:
- "gcr.io/pomerium-io/pomerium:{{ .Tag }}-cloudrun"
dockerfile: .github/Dockerfile-cloudrun
binaries:
- pomerium
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}}"
- "--label=repository=http://github.com/pomerium/pomerium"
- "--label=homepage=http://www.pomerium.io"
- goarch: arm64
image_templates:
- "pomerium/pomerium:arm64v8-{{ .Tag }}"
dockerfile: .github/Dockerfile-release.arm64v8
binaries:
- pomerium
- pomerium-cli
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}}"
- "--label=repository=http://github.com/pomerium/pomerium"
- "--label=homepage=http://www.pomerium.io"
brews:
- # Name template of the recipe
name: pomerium-cli
# IDs of the archives to use.
ids:
- pomerium-cli
# GOARM to specify which 32-bit arm version to use if there are multiple versions
# from the build section. Brew formulas support atm only one 32-bit version.
# Default is 6 for all artifacts or each id if there a multiple versions.
goarm: 6
tap:
owner: pomerium
name: homebrew-tap
# Optionally a token can be provided, if it differs from the token provided to GoReleaser
token: "{{ .Env.APPARITOR_GITHUB_TOKEN }}"
# Git author used to commit to the repository.
# Defaults are shown.
commit_author:
name: apparitor
email: apparitor@users.noreply.github.com
folder: Formula
install: |
bin.install "pomerium-cli"
- # Name template of the recipe
name: pomerium
# IDs of the archives to use.
ids:
- pomerium
# GOARM to specify which 32-bit arm version to use if there are multiple versions
# from the build section. Brew formulas support atm only one 32-bit version.
# Default is 6 for all artifacts or each id if there a multiple versions.
goarm: 6
tap:
owner: pomerium
name: homebrew-tap
# Optionally a token can be provided, if it differs from the token provided to GoReleaser
token: "{{ .Env.APPARITOR_GITHUB_TOKEN }}"
# Git author used to commit to the repository.
# Defaults are shown.
commit_author:
name: apparitor
email: apparitor@users.noreply.github.com
folder: Formula
install: |
bin.install "pomerium"
nfpms:
- id: pomerium
builds:
- pomerium
package_name: pomerium
vendor: Pomerium, Inc.
homepage: https://www.pomerium.com
description: Identity Aware Proxy
maintainer:
license: Apache 2.0
epoch: 1
release: 1
meta: false
formats:
- deb
- rpm
bindir: /usr/sbin
empty_folders:
- /etc/pomerium
scripts:
preinstall: ospkg/preinstall.sh
postinstall: ospkg/postinstall.sh
config_files:
"ospkg/conf/config.yaml": "/etc/pomerium/config.yaml"
overrides:
deb:
dependencies:
- libsystemd0
file_name_template: "{{ .ProjectName }}_{{ .Version }}-{{ .Release }}_{{ .Arch }}"
rpm:
dependencies:
- systemd-libs
replacements:
arm64: aarch64
amd64: x86_64
file_name_template: "{{ .ProjectName }}-{{ .Version }}-{{ .Release }}.{{ .Arch }}"
- id: pomerium-cli
builds:
- pomerium-cli
package_name: pomerium-cli
vendor: Pomerium, Inc.
homepage: https://www.pomerium.com
description: Identity Aware Proxy
maintainer:
license: Apache 2.0
epoch: 1
release: 1
meta: false
formats:
- deb
- rpm
bindir: /usr/sbin
overrides:
deb:
replacements:
arm64: arm64
file_name_template: '{{ .ProjectName }}-cli_{{ .Version }}-{{ .Release }}_{{ .Arch }}{{ if .Arm }}{{if eq .Arm "7"}}hf{{ end }}{{ end }}'
rpm:
replacements:
arm64: aarch64
amd64: x86_64
file_name_template: '{{ .ProjectName }}-cli_{{ .Version }}-{{ .Release }}_{{ .Arch }}{{ if .Arm }}{{if eq .Arm "7"}}hf{{ end }}{{ end }}'