Skip to main content

CI/CD Integration

Run Azimuth scans automatically on every push, pull request, or merge to catch vulnerabilities before deployment.

How it works

Azimuth connects to your repository through GitHub integration. Once configured, scans are triggered automatically based on your pipeline events. Each scan runs the full Azimuth pipeline—Preparation, Exploration, Proposal, Consolidation, and Investigation—against the changed contracts.

Supported frameworks

  • Foundry — repos using forge build
  • Hardhat — repos using npx hardhat compile

Make sure your project compiles cleanly. Azimuth needs a successful build to begin analysis.

What gets triggered

You can configure Azimuth to scan on:

  • Pull requests — catch issues before they're merged
  • Pushes to main/protected branches — verify the state of production code
  • Manual triggers — on-demand scans for specific commits or branches

Scan results in your pipeline

Each scan produces:

  • Findings with severity (critical, high, medium, low), likelihood, and impact
  • Intent and invariant summaries derived from the codebase
  • Investigation evidence from parallel agents validating each proposal

Results are available in the TestMachine dashboard. Critical and high severity findings can be configured to block merges or deployments.

Getting started

  1. Connect your GitHub repo (see Quickstart)
  2. Configure which pipeline events trigger scans
  3. Set severity thresholds for blocking deployments
  4. Review results in the TestMachine dashboard after each scan