unpoller_unpoller/.goreleaser.yaml

149 lines
5.1 KiB
YAML

# .goreleaser.yaml
builds:
- env:
- CGO_ENABLED=0
binary: unpoller
goos:
- linux
goarch:
- amd64
- arm64
- arm
dockers:
- # amd64
image_templates:
- "unpoller/unpoller:latest-amd64"
- "unpoller/unpoller:{{ .Tag }}-amd64"
- "unpoller/unpoller:{{ .Tag }}-{{ .Env.GO_VERSION }}-amd64"
- "unpoller/unpoller:v{{ .Major }}-amd64"
use: buildx
build_flag_templates:
- "--pull"
- "--label=org.opencontainers.image.created={{.Date}}"
- "--label=org.opencontainers.image.title={{.ProjectName}}"
- "--label=org.opencontainers.image.revision={{.FullCommit}}"
- "--label=org.opencontainers.image.version={{.Version}}"
- "--label=org.opencontainers.image.documentation='https://unpoller.com/docs/install/docker'"
- "--label=org.opencontainers.image.description='Telemetry and Observability for your UniFi Network'"
- "--label=org.opencontainers.image.url='https://unpoller.com'"
- "--label=org.opencontainers.image.source='https://github.com/unpoller/unpoller'"
- "--label=org.opencontainers.image.vendor=unpoller"
- "--label=org.opencontainers.image.licenses=MIT"
- "--platform=linux/amd64"
push_flags:
- --tls-verify=false
- # arm64
image_templates:
- "unpoller/unpoller:latest-arm64v8"
- "unpoller/unpoller:{{ .Tag }}-arm64v8"
- "unpoller/unpoller:{{ .Tag }}-{{ .Env.GO_VERSION }}-arm64v8"
- "unpoller/unpoller:v{{ .Major }}-arm64v8"
use: buildx
build_flag_templates:
- "--pull"
- "--label=org.opencontainers.image.created={{.Date}}"
- "--label=org.opencontainers.image.title={{.ProjectName}}"
- "--label=org.opencontainers.image.revision={{.FullCommit}}"
- "--label=org.opencontainers.image.version={{.Version}}"
- "--label=org.opencontainers.image.documentation='https://unpoller.com/docs/install/docker'"
- "--label=org.opencontainers.image.description='Telemetry and Observability for your UniFi Network'"
- "--label=org.opencontainers.image.url='https://unpoller.com'"
- "--label=org.opencontainers.image.source='https://github.com/unpoller/unpoller'"
- "--label=org.opencontainers.image.vendor=unpoller"
- "--label=org.opencontainers.image.licenses=MIT"
- "--platform=linux/arm64"
push_flags:
- --tls-verify=false
- # armv7
image_templates:
- "unpoller/unpoller:latest-armv7"
- "unpoller/unpoller:{{ .Tag }}-armv7"
- "unpoller/unpoller:{{ .Tag }}-{{ .Env.GO_VERSION }}-armv7"
- "unpoller/unpoller:v{{ .Major }}-armv7"
use: buildx
build_flag_templates:
- "--pull"
- "--label=org.opencontainers.image.created={{.Date}}"
- "--label=org.opencontainers.image.title={{.ProjectName}}"
- "--label=org.opencontainers.image.revision={{.FullCommit}}"
- "--label=org.opencontainers.image.version={{.Version}}"
- "--label=org.opencontainers.image.documentation='https://unpoller.com/docs/install/docker'"
- "--label=org.opencontainers.image.description='Telemetry and Observability for your UniFi Network'"
- "--label=org.opencontainers.image.url='https://unpoller.com'"
- "--label=org.opencontainers.image.source='https://github.com/unpoller/unpoller'"
- "--label=org.opencontainers.image.vendor=unpoller"
- "--label=org.opencontainers.image.licenses=MIT"
- "--platform=linux/arm/v7"
push_flags:
- --tls-verify=false
docker_manifests:
- name_template: unpoller/unpoller:{{ .Version }}
image_templates:
- unpoller/unpoller:{{ .Version }}-amd64
- unpoller/unpoller:{{ .Version }}-arm64v8
- unpoller/unpoller:{{ .Version }}-armv7
nfpms:
-
# ID of the nfpm config, must be unique.
# Defaults to "default".
id: foo
# Build IDs for the builds you want to create NFPM packages for.
# Defaults empty, which means no filtering.
builds:
- foo
- bar
# Replacements for GOOS and GOARCH in the package name.
# Keys should be valid GOOSs or GOARCHs.
# Values are the respective replacements.
# Default is empty.
replacements:
amd64: 64-bit
386: 32-bit
darwin: macOS
linux: Tux
vendor: unpoller
homepage: https://unpoller.com/
maintainer: unpoller.com
description: Telemetry and Observability for your UniFi Network
license: MIT
formats:
- apk
- deb
- rpm
- termux.deb # Since GoReleaser v1.11.
- archlinux
provides:
- unpoller
bindir: /usr/bin
version_metadata: git
section: default
priority: extra
# Contents to add to the package.
# GoReleaser will automatically add the binaries.
contents:
# Basic file that applies to all packagers
- src: unpoller
dst: /usr/local/bin/unpoller
- dst: /etc/unpoller
type: dir
file_info:
mode: 0700
# Example config files
- src: examples/up.conf.example
dst: /etc/unpoller/up.conf.example
type: config
- src: examples/up.json.example
dst: /etc/unpoller/up.json.example
type: config
- src: examples/up.yaml.example
dst: /etc/unpoller/up.yaml.example
type: config