Unit tests can be run with make unit_tests, integration tests with make integration_tests and all tests with make test.
This project uses GoReleaser to build release artifacts such as macOS universal binaries, shell completions and a Homebrew cask.
Run goreleaser release --snapshot --clean to build all release artifacts.
To create a new release, use the Create Versioned Release
GitHub Actions workflow.
Select the correct version bump level (patch, minor or major) based on the changes made since the last release.
The release process works as follows:
‘Create Versioned Release’ is triggered manually
A Git tag is calculated based on the provided version bump level and the latest version number
goreleaser release --clean runs, which:
Builds the CLI for macOS x86 and arm64
Produces a universal binary containing both architectures
Produces shell completion files for bash, zsh and fish
Packages up the binary and shell completion files into a .tar.gz
Creates a GitHub Release with the packaged binary and creates a changelog based on commits since last release