api/.goreleaser.yml

85 lines
1.9 KiB
YAML

# This is an example goreleaser.yaml file with some sane defaults.
# Make sure to check the documentation at http://goreleaser.com
before:
hooks:
# You may remove this if you don't use go modules.
- task generate
builds:
- id: "inetmock"
binary: inetmock
main: ./cmd/inetmock/
ldflags:
- -w -s
env:
- CGO_ENABLED=0
goos:
- linux
- darwin
goarch:
- amd64
- id: "imctl"
binary: imctl
main: ./cmd/imctl/
ldflags:
- -w -s
goos:
- linux
- freebsd
- darwin
- windows
goarch:
- amd64
archives:
- id: inetmock
builds:
- inetmock
name_template: "{{ .ProjectName }}_server_{{ .Version }}_{{ .Os }}_{{ .Arch }}"
replacements:
amd64: x86_64
wrap_in_directory: true
files:
- config.yaml
- "*.so"
- id: imctl
builds:
- imctl
name_template: "{{ .ProjectName }}_cli_{{ .Version }}_{{ .Os }}_{{ .Arch }}"
replacements:
amd64: x86_64
wrap_in_directory: true
files: [ ]
checksum:
name_template: 'checksums.txt'
snapshot:
name_template: "{{ .Tag }}-next"
changelog:
sort: asc
filters:
exclude:
- '^docs:'
- '^test:'
release:
gitlab:
owner: inetmock
name: inetmock
dockers:
- ids:
- inetmock
- imctl
image_templates:
- registry.gitlab.com/inetmock/inetmock:latest
- registry.gitlab.com/inetmock/inetmock:{{ .Tag }}
- registry.gitlab.com/inetmock/inetmock:{{ .Major }}
dockerfile: build/docker/inetmock.dockerfile
build_flag_templates:
- "--label=org.opencontainers.image.created={{.Date}}"
- "--label=org.opencontainers.image.title={{.ProjectName}}"
- "--label=org.opencontainers.image.revision={{.FullCommit}}"
- "--label=org.opencontainers.image.version={{.Version}}"
extra_files:
- config-container.yaml
- assets/