Skip to content

Current main: applies to the application at 51a835a. See version and availability for newer candidate work.

Installation and builds

Build from source

Use Go 1.25 or later and Make. The published code is on the repository's main branch:

git clone --branch main https://github.com/ziad-hsn/cpra.git
cd cpra
make

make builds the server and CLI with embedded dashboard assets. Run ./bin/cpra -version or ./bin/cpractl --version to inspect the build.

These docs correspond to 51a835a. Check out that commit to reproduce this documentation snapshot.

Include optional drivers

make BUILD_TAGS='redis postgres kubernetes'

Optional checks: redis postgres mysql mongo rabbitmq kafka. Optional recovery: kubernetes aws systemd. Optional alerts: teams twilio.

A configuration can name an optional driver even when its implementation is absent from the binary. Build the required tags before trying that integration. Driver reference

Rebuild the dashboard

Use Node.js 24, pnpm 11.22.0, and Python 3:

make dashboard-build dashboard-check

The build installs dependencies from the lockfile, builds the frontend, and stages its assets for Go embedding. Dashboard checks run TypeScript, lint, and tests.

Create distribution archives

make release VERSION=0.1.0

Choose a version for your own build. The example does not imply that a 0.1.0 GitHub Release exists. Packaging creates Linux amd64 and arm64 server/CLI archives, a source archive, dependency notices, and SHA-256 checksums under dist/release. It does not upload them.

Build a container

docker build -f docker/Dockerfile -t cpra:local .

The container runs as UID 1001. It needs a readable manifest and write access to configured log destinations. See deployment before mounting host or Docker access.