Install¶
You can install the pre-compiled binary (in several ways), compile from sources, or run with Docker.
We also provide a GitHub action to easily install Chainsaw in your workflows.
Install the pre-compiled binary¶
Homebrew tap¶
add tap:
brew tap kyverno/chainsaw https://github.com/kyverno/chainsaw
install chainsaw:
brew install kyverno/chainsaw/chainsaw
Don't forget to specify the tap name
Homebrew core already has a tool named chainsaw
.
Be sure that you specify the tap name when installing to install the right tool.
Manually¶
Download the pre-compiled binaries for your system from the releases page and copy them to the desired location.
Install using go install
¶
You can install with go install
with:
go install github.com/kyverno/chainsaw@latest
Running with Docker¶
Chainsaw is also available as a Docker image which you can pull and run:
docker pull ghcr.io/kyverno/chainsaw:<version>
Info
Since Chainsaw relies on files for its operation (like test definitions), you will need to bind mount the necessary directories when running it via Docker.
docker run --rm \
-v ./testdata/e2e/:/chainsaw/ \
-v ${HOME}/.kube/:/etc/kubeconfig/ \
-e KUBECONFIG=/etc/kubeconfig/config \
--network=host \
ghcr.io/kyverno/chainsaw:<version> \
test /chainsaw --config /chainsaw/config.yaml
Compiling from sources¶
clone:
git clone https://github.com/kyverno/chainsaw.git
cd chainsaw
go mod tidy
make build
verify it works:
./chainsaw version
GitHub action¶
A GitHub action is available to install Chainsaw in your workflows. See the GitHub action dedicated documentation.