Prerequisites
Before using the Manetu PolicyEngine, ensure you have the appropriate tools installed for your use case.
:::tip Most Users Don't Need Go
If you install mpe via Homebrew or download a pre-built binary, you don't need Go installed. Go is only required if you're building from source or using the embedded Go library.
:::
For All Users
Open Policy Agent (OPA)
OPA is required for the mpe lint command to validate Rego syntax.
Installation:
- macOS:
brew install opa - Linux/Windows: Download from OPA releases
Verify installation:
opa version
# Version: 0.60.0
For Go Developers
If you're building mpe from source or using the embedded Go library, you'll also need:
Go
Go 1.21 or later is required.
Installation:
- macOS:
brew install go - Linux: Follow Go installation instructions
- Windows: Download from go.dev/dl
Verify installation:
go version
# go version go1.21.0 darwin/arm64
Optional Tools
Make
Make is useful for running project tasks, but not strictly required.
- macOS:
xcode-select --install - Linux:
apt-get install makeoryum install make
golangci-lint / staticcheck
For development on the PolicyEngine itself:
go install github.com/golangci/golangci-lint/cmd/golangci-lint@latest
go install honnef.co/go/tools/cmd/staticcheck@latest
Verifying Your Environment
Run the commands relevant to your setup:
# All users - Check OPA
opa version
# Go developers - Check Go
go version
# Optional - Check Make
make --version