goreleaser - Deliver Go binaries as fast and easily as possible
goreleaser [options...] [argument...]
GoReleaser is a release automation tool for Go projects.
Its goal is to simplify the build, release and publish steps while
providing
variant customization options for all steps.
GoReleaser is built for CI tools, you only need to download and
execute it
in your build script. Of course, you can also install it locally
if you wish.
You can also customize your entire release process through a
single .goreleaser.yaml file.
- --debug
- Enable debug mode
- build
Builds the current project
- OPTIONS
--f --config Load configuration from file
- --deprecated
- Force print the deprecation message - tests only
- --id
- Builds only the specified build id
- --o --output
- Copy the binary to the path after the build. Only taked into account when
using --single-target and a single id (either with --id or if config only
has one build)
- --p --parallelism
- Amount tasks to run concurrently (default: number of CPUs)
- --rm-dist
- Remove the dist folder before building
- --single-target
- Builds only for current GOOS and GOARCH
- --skip-post-hooks
- Skips all post-build hooks
- --skip-validate
- Skips several sanity checks
- --snapshot
- Generate an unversioned snapshot build, skipping all validations
- --timeout
- Timeout to the entire build process
- check
Checks if configuration is valid
- OPTIONS
--f --config Configuration file to check
- --deprecated
- Force print the deprecation message - tests only
- --q --quiet
- Quiet mode: no output
- completion
Generate the autocompletion script for the specified
shell
- COMMANDS
bash
Generate the autocompletion script for bash
- OPTIONS
--no-descriptions disable completion
descriptions
- fish
Generate the autocompletion script for fish
- OPTIONS
--no-descriptions disable completion
descriptions
- powershell
Generate the autocompletion script for powershell
- OPTIONS
--no-descriptions disable completion
descriptions
- zsh
Generate the autocompletion script for zsh
- OPTIONS
--no-descriptions disable completion
descriptions
- help [command]
Help about any command
- init
Generates a .goreleaser.yaml file
- OPTIONS
--f --config Load configuration from file
- jsonschema
outputs goreleaser's JSON schema
- OPTIONS
--o --output where to save the json schema
- release
Releases the current project
- OPTIONS
--auto-snapshot Automatically sets --snapshot if
the repo is dirty
- --f --config
- Load configuration from file
- --deprecated
- Force print the deprecation message - tests only
- --p --parallelism
- Amount tasks to run concurrently (default: number of CPUs)
- --release-footer
- Load custom release notes footer from a markdown file
- --release-footer-tmpl
- Load custom release notes footer from a templated markdown file (overrides
--release-footer)
- --release-header
- Load custom release notes header from a markdown file
- --release-header-tmpl
- Load custom release notes header from a templated markdown file (overrides
--release-header)
- --release-notes
- Load custom release notes from a markdown file (will skip GoReleaser
changelog generation)
- --release-notes-tmpl
- Load custom release notes from a templated markdown file (overrides
--release-notes)
- --rm-dist
- Removes the dist folder
- --skip-announce
- Skips announcing releases (implies --skip-validate)
- --skip-publish
- Skips publishing artifacts
- --skip-sbom
- Skips cataloging artifacts
- --skip-sign
- Skips signing artifacts
- --skip-validate
- Skips git checks
- --snapshot
- Generate an unversioned snapshot release, skipping all validations and
without publishing any artifacts (implies --skip-publish, --skip-announce
and --skip-validate)
- --timeout
- Timeout to the entire release process