Skip to main content

Prerequisites

Before using the Manetu PolicyEngine, ensure you have the appropriate tools installed for your use case.

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:

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 make or yum 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