GORELEASER(1)

NAME
goreleaser - Release engineering, simplified

SYNOPSIS
goreleaser [options...] [argument...]

DESCRIPTION
Release engineering, simplified.

GoReleaser is a release automation tool, built with love and care by @caarlos0 and many contributors.

Complete documentation is available at https://goreleaser.com

OPTIONS

--verbose
    Enable verbose mode

COMMANDS

build
    Builds the current project

OPTIONS
    --auto-snapshot Automatically sets --snapshot if the repository is dirty

    --clean
        Removes the 'dist' directory before building

    -f, --config
        Load configuration from file

    --deprecated
        Force print the deprecation message - tests only

    --id
        Builds only the specified build ids

    -o, --output
        Copy the binary to the path after the build. Only taken into account when using --single-target and a single id (either with --id or if configuration only has one build)

    -p, --parallelism
        Number of tasks to run concurrently (default: number of CPUs)

    --single-target
        Builds only for current GOOS and GOARCH, regardless of what's set in the configuration file

    --skip
        Skip the given options (valid options are: before, post-hooks, pre-hooks, validate)

    --snapshot
        Generate an unversioned snapshot build, skipping all validations

    --timeout
        Timeout to the entire build process

check [configuration files]
    Checks if configuration is valid

OPTIONS
    -f, --config Configuration file(s) 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

healthcheck
    Checks if needed tools are installed

OPTIONS
    -f, --config Configuration file

    -q, --quiet
        Quiet mode: no output

help [command]
    Help about any command

init
    Generates a .goreleaser.yaml file

OPTIONS
    -f, --config Load configuration from file

    -l, --language
        Which language will be used

jsonschema
    Outputs goreleaser's JSON schema

OPTIONS
    -o, --output Where to save the JSONSchema file

release
    Releases the current project

OPTIONS
    --auto-snapshot Automatically sets --snapshot if the repository is dirty

    --clean
        Removes the 'dist' directory

    -f, --config
        Load configuration from file

    --deprecated
        Force print the deprecation message - tests only

    --draft
        Whether to set the release to draft. Overrides release.draft in the configuration file

    --fail-fast
        Whether to abort the release publishing on the first error

    -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)

    --skip
        Skip the given options (valid options are announce, archive, aur, aur-source, before, chocolatey, docker, flatpak, homebrew, ko, makeself, mcp, nfpm, nix, notarize, publish, sbom, scoop, sign, snapcraft, srpm, validate, winget)

    --snapshot
        Generate an unversioned snapshot release, skipping all validations and without publishing any artifacts (implies --skip=announce,publish,validate)

    --timeout
        Timeout to the entire release process

EXAMPLES

# Initialize your project:

goreleaser init

# Verify your configuration:

goreleaser check

# Verify dependencies:

goreleaser healthcheck

# Build the binaries only:

goreleaser build

# Run a snapshot release:

goreleaser release --snapshot

# Run a complete release:

goreleaser release