env: - GO111MODULE=on - CGO_ENABLED=0 builds: - binary: doggo id: cli goos: - windows - darwin - linux goarch: - amd64 - arm64 goarm: - 6 - 7 ldflags: - -s -w -X "main.buildVersion={{ .Tag }} ({{ .ShortCommit }} {{ .Date }})" dir: ./cmd/doggo/cli/ - binary: doggo-api.bin id: api goos: - windows - darwin - linux goarch: - amd64 - arm64 goarm: - 6 - 7 ldflags: - -s -w -X "main.buildVersion={{ .Tag }} ({{ .ShortCommit }} {{ .Date }})" dir: ./cmd/doggo/api/ hooks: pre: make deps && make build-frontend archives: - format: tar.gz files: - README.md - LICENSE snapcrafts: - name_template: "{{ .ProjectName }}_{{ .Arch }}{{ if .Arm }}v{{ .Arm }}{{ end }}" summary: Command-line DNS client. description: | doggo is a command-line DNS client written in Go. It supports protocols like DoH, DoT and output formats like JSON. grade: stable confinement: strict publish: true dockers: - image_templates: - "ghcr.io/mr-karan/doggo-cli:{{ .Tag }}" - "ghcr.io/mr-karan/doggo-cli:latest" binaries: - doggo dockerfile: Dockerfile-cli build_flag_templates: - "--build-arg" - "ARCH=amd64" - image_templates: - "ghcr.io/mr-karan/doggo-cli:{{ .Tag }}-arm64v8" - "ghcr.io/mr-karan/doggo-cli:latest-arm64v8" binaries: - doggo goarch: arm64 dockerfile: Dockerfile-cli build_flag_templates: - "--build-arg" - "ARCH=arm64v8" - image_templates: - "ghcr.io/mr-karan/doggo-api:{{ .Tag }}" - "ghcr.io/mr-karan/doggo-api:latest" binaries: - doggo-api.bin dockerfile: Dockerfile-api build_flag_templates: - "--build-arg" - "ARCH=amd64" extra_files: - config-api-sample.toml - image_templates: - "ghcr.io/mr-karan/doggo-api:{{ .Tag }}-arm64v8" - "ghcr.io/mr-karan/doggo-api:latest-arm64v8" binaries: - doggo-api.bin goarch: arm64 dockerfile: Dockerfile-api build_flag_templates: - "--build-arg" - "ARCH=arm64v8" extra_files: - config-api-sample.toml