.goreleaser.yml 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  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