.goreleaser.yml (1788B)
1 # Visit https://goreleaser.com for documentation on how to customize this 2 # behavior. 3 before: 4 hooks: 5 # this is just an example and not a requirement for provider building/publishing 6 - go mod tidy 7 builds: 8 - env: 9 # goreleaser does not work with CGO, it could also complicate 10 # usage by users in CI/CD systems like Terraform Cloud where 11 # they are unable to install libraries. 12 - CGO_ENABLED=0 13 mod_timestamp: '{{ .CommitTimestamp }}' 14 flags: 15 - -trimpath 16 ldflags: 17 - '-s -w -X main.version={{.Version}} -X main.commit={{.Commit}}' 18 goos: 19 - freebsd 20 - windows 21 - linux 22 - darwin 23 goarch: 24 - amd64 25 - '386' 26 - arm 27 - arm64 28 ignore: 29 - goos: darwin 30 goarch: '386' 31 binary: '{{ .ProjectName }}_v{{ .Version }}' 32 archives: 33 - format: zip 34 name_template: '{{ .ProjectName }}_{{ .Version }}_{{ .Os }}_{{ .Arch }}' 35 checksum: 36 extra_files: 37 - glob: 'terraform-registry-manifest.json' 38 name_template: '{{ .ProjectName }}_{{ .Version }}_manifest.json' 39 name_template: '{{ .ProjectName }}_{{ .Version }}_SHA256SUMS' 40 algorithm: sha256 41 signs: 42 - artifacts: checksum 43 args: 44 # if you are using this in a GitHub action or some other automated pipeline, you 45 # need to pass the batch flag to indicate its not interactive. 46 - "--batch" 47 - "--local-user" 48 - "{{ .Env.GPG_FINGERPRINT }}" # set this environment variable for your signing key 49 - "--output" 50 - "${signature}" 51 - "--detach-sign" 52 - "${artifact}" 53 release: 54 extra_files: 55 - glob: 'terraform-registry-manifest.json' 56 name_template: '{{ .ProjectName }}_{{ .Version }}_manifest.json' 57 # If you want to manually examine the release before its live, uncomment this line: 58 # draft: true 59 changelog: 60 skip: true