builds: - binary: FLEcli goos: - linux - windows - darwin goarch: - '386' - amd64 - arm - arm64 goarm: - '6' ignore: - goos: darwin goarch: '386' - goos: windows goarch: amd64 - goos: windows goarch: arm64 - goos: windows goarch: arm ldflags: - -s -w -X FLEcli/flecmd.version={{.Version}} -X FLEcli/flecmd.commit={{.Commit}} -X FLEcli/flecmd.date={{.Date}} -X=FLEcli/flecmd.builtBy=goReleaser env: - CGO_ENABLED=0 dockers: - goos: linux goarch: amd64 goarm: '' image_templates: - "on4kjm/flecli:latest" - "on4kjm/flecli:{{ .Tag }}" # Skips the docker push. Could be useful if you also do draft releases. # If set to auto, the release will not be pushed to the docker repository # in case there is an indicator for prerelease in the tag e.g. v1.0.0-rc1 # Defaults to false. skip_push: auto # Path to the Dockerfile (from the project root). dockerfile: docker/Dockerfile # Template of the docker build flags. build_flag_templates: - "--pull" - "--label=org.opencontainers.image.created={{.Date}}" - "--label=org.opencontainers.image.title={{.ProjectName}}" - "--label=org.opencontainers.image.revision={{.FullCommit}}" - "--label=org.opencontainers.image.version={{.Version}}" archives: - name_template: >- {{ .ProjectName }}_{{ .Version }}_ {{- if eq .Os "darwin"}}macOS {{- else }}{{- .Os }}{{ end }}_ {{- if eq .Arch "amd64" }}64-bit {{- else if eq .Arch "386" }}32-bit {{- else }}{{ .Arch }}{{ end }} format_overrides: - goos: windows format: zip files: - README.md - doc/whats_new.md - doc/usage.md - doc/install.md - doc/install_mac.md - doc/pictures/Error_1.png - doc/pictures/Error_2.png - doc/pictures/security_setting.png - doc/pictures/System_preference.png checksum: name_template: 'checksums.txt' snapshot: name_template: "{{ .Tag }}-next" changelog: skip: true sort: asc filters: exclude: - '^docs:' - '^test:' # .goreleaser.yml brews: - # Name template of the recipe # Default to project name name: flecli # # IDs of the archives to use. # # Defaults to all. # ids: # - foo # - bar # GOARM to specify which 32-bit arm version to use if there are multiple versions # from the build section. Brew formulas support atm only one 32-bit version. # Default is 6 for all artifacts or each id if there a multiple versions. goarm: '6' # NOTE: make sure the url_template, the token and given repo (github or gitlab) owner and name are from the # same kind. We will probably unify this in the next major version like it is done with scoop. # GitHub/GitLab repository to push the formula to repository: owner: on4kjm name: homebrew-tap # Optionally a branch can be provided. If the branch does not exist, it # will be created. If no branch is listed, the default branch will be used branch: main # Optionally a token can be provided, if it differs from the token provided to GoReleaser token: "{{ .Env.HOMEBREW }}" # Template for the url which is determined by the given Token (github or gitlab) # Default for github is "https://github.com///releases/download/{{ .Tag }}/{{ .ArtifactName }}" # Default for gitlab is "https://gitlab.com///-/releases/{{ .Tag }}/downloads/{{ .ArtifactName }}" # Default for gitea is "https://gitea.com///releases/download/{{ .Tag }}/{{ .ArtifactName }}" url_template: "https://github.com/on4kjm/FLEcli/releases/download/{{ .Tag }}/{{ .ArtifactName }}" # Allows you to set a custom download strategy. Note that you'll need # to implement the strategy and add it to your tap repository. # Example: https://docs.brew.sh/Formula-Cookbook#specifying-the-download-strategy-explicitly # Default is empty. download_strategy: CurlDownloadStrategy # # Allows you to add a custom require_relative at the top of the formula template # # Default is empty # custom_require: custom_download_strategy # Git author used to commit to the repository. # Defaults are shown. commit_author: name: goreleaserbot email: on4kjm@gmail.com # The project name and current git tag are used in the format string. commit_msg_template: "Brew formula update for {{ .ProjectName }} version {{ .Tag }}" # Folder inside the repository to put the formula. # Default is the root folder. folder: Formula # # Caveats for the user of your binary. # # Default is empty. # caveats: "How to use this binary" # # Your app's homepage. # # Default is empty. homepage: "https://github.com/on4kjm/FLEcli" # Template of your app's description. # Default is empty. description: "Fast Log Entry (FLE) command line interface." # SPDX identifier of your app's license. # Default is empty. license: "MIT" # Setting this will prevent goreleaser to actually try to commit the updated # formula - instead, the formula file will be stored on the dist folder only, # leaving the responsibility of publishing it to the user. # If set to auto, the release will not be uploaded to the homebrew tap # in case there is an indicator for prerelease in the tag e.g. v1.0.0-rc1 # Default is false. # skip_upload: auto # So you can `brew test` your formula. # Default is empty. test: | system "#{bin}/FLEcli version"