env:
  - GO111MODULE=on
before:
  hooks:
    - go mod tidy
builds:

  - id: nowin
    env:
      - CGO_ENABLED=0
      - GO111MODULE=on
    goos:
      - linux
      - darwin
    goarch:
      - 386
      - amd64
      - arm
      - arm64
    goarm:
      - 7
    ignore:
      - goos: darwin
        goarch: arm
      - goos: darwin
        goarch: 386
      - goos: windows
        goarch: arm
    mod_timestamp: "{{ .CommitTimestamp }}"
    flags:
      - -trimpath
    ldflags:
      - -s -w -X main.VERSION=v{{.Version}}
  - id: win
    env:
      - CGO_ENABLED=0
      - GO111MODULE=on
    goos:
      - windows
    goarch:
      - 386
      - amd64
    goarm:
      - 7
    mod_timestamp: "{{ .CommitTimestamp }}"
    flags:
      - -trimpath
    ldflags:
      - -s -w -X main.VERSION=v{{.Version}}

checksum:
  name_template: "{{ .ProjectName }}_checksums.txt"
changelog:
  sort: asc
  filters:
    exclude:
      - "^docs:"
      - "^test:"
      - fix typo
      - Merge pull request
      - Merge branch
      - Merge remote-tracking
      - go mod tidy

archives:
  - id: binary
    builds:
      - win
    name_template: "{{ .ProjectName }}_{{ .Os }}_{{ .Arch }}{{ if .Arm }}v{{ .Arm }}{{ end }}"
    format_overrides:
      - goos: windows
        format: binary
  - id: nowin
    builds:
      - nowin
      - win
    name_template: "{{ .ProjectName }}_{{ .Os }}_{{ .Arch }}{{ if .Arm }}v{{ .Arm }}{{ end }}"
    format_overrides:
      - goos: windows
        format: zip

nfpms:
  - license: AGPL 3.0
    homepage: https://github.com/johlanse/study_xxqg
    file_name_template: "{{ .ProjectName }}_{{ .Version }}_{{ .Os }}_{{ .Arch }}"
    formats:
      - deb
      - rpm
    maintainer: johlanse