CI Integration: Generic Pipelines

Use Vibgrate in any CI system — Jenkins, CircleCI, Bitbucket Pipelines, or custom build scripts. The CLI requires no login, produces standard outputs, and works entirely offline.

Vibgrate Docs

Vibgrate Help

Why Vibgrate Works Everywhere

The Vibgrate CLI:

  • Requires no login or authentication for scanning
  • Returns meaningful exit codes (0 = success, 1 = error, 2 = threshold exceeded)
  • Produces standard SARIF output that many tools can consume
  • Works entirely offline — push is opt-in
  • Needs only Node.js >= 20

Jenkins

pipeline {
  agent {
    docker { image 'node:22' }
  }
  stages {
    stage('Drift Scan') {
      steps {
        sh 'npx @vibgrate/cli scan . --format sarif --out vibgrate.sarif --fail-on error'
      }
    }
  }
  post {
    always {
      archiveArtifacts artifacts: 'vibgrate.sarif'
    }
  }
}

CircleCI

version: 2.1
jobs:
  drift-scan:
    docker:
      - image: cimg/node:22.0
    steps:
      - checkout
      - run:
          name: Vibgrate Scan
          command: npx @vibgrate/cli scan . --fail-on error

workflows:
  main:
    jobs:
      - drift-scan

Bitbucket Pipelines

pipelines:
  default:
    - step:
        name: Vibgrate Drift Scan
        image: node:22
        script:
          - npx @vibgrate/cli scan . --fail-on error

Shell Script

For any environment with Node.js:

#!/bin/bash
set -e

# Run scan
npx @vibgrate/cli scan . \
  --format sarif \
  --out vibgrate.sarif \
  --fail-on error

echo "Drift scan passed"

Exit Codes

CodeMeaning
0Success
1Runtime error
2--fail-on threshold exceeded

Use these to control pipeline flow in any CI system.