You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
FLEcli/.goreleaser.yml

177 lines
5.3 KiB

builds:
- binary: FLEcli
goos:
- linux
- windows
- darwin
goarch:
- '386'
- amd64
- arm
- arm64
goarm:
- '6'
ignore:
- goos: darwin
goarch: '386'
- goos: windows
goarch: amd64
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:
- replacements:
amd64: 64-bit
386: 32-bit
darwin: macOS
linux: Linux
name_template: "{{ .ProjectName }}_{{ .Version }}_{{ .Os }}_{{ .Arch }}"
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
tap:
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/<repo_owner>/<repo_name>/releases/download/{{ .Tag }}/{{ .ArtifactName }}"
# Default for gitlab is "https://gitlab.com/<repo_owner>/<repo_name>/-/releases/{{ .Tag }}/downloads/{{ .ArtifactName }}"
# Default for gitea is "https://gitea.com/<repo_owner>/<repo_name>/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"