distributable:
  url: https://github.com/ariga/atlas/archive/refs/tags/v{{version}}.tar.gz
  strip-components: 1

versions:
  github: ariga/atlas

provides:
  - bin/atlas

build:
  dependencies:
    go.dev: ^1.20
  working-directory: cmd/atlas
  script:
    - go mod download
    - go build -v -trimpath -ldflags="$LDFLAGS" -o $BUILDLOC .
  env:
    GOPROXY: https://proxy.golang.org,direct
    GOSUMDB: sum.golang.org
    GO111MODULE: on
    BUILDLOC: '{{prefix}}/bin/atlas'
    LDFLAGS:
      - -s
      - -w
      - -X ariga.io/atlas/cmd/atlas/internal/cmdapi.version=v{{version}}
    linux:
      # or segmentation fault
      # fix found here https://github.com/docker-library/golang/issues/402#issuecomment-982204575
      LDFLAGS:
        - -buildmode=pie

test:
  script:
    - run: test "$(atlas version | head -n1)" = "atlas version v{{version}}"
      if: <0.23
    - run: test "$(atlas version | head -n1)" = "atlas unofficial version v{{version}}"
      if: '>=0.23'
