CI Integration: Azure DevOps

Set up Vibgrate in Azure DevOps Pipelines for continuous drift detection, SARIF artifact publishing, and drift budget enforcement.

Vibgrate Docs

Vibgrate Help

Overview

Vibgrate works in Azure DevOps Pipelines with zero special configuration. The CLI runs on any agent with Node.js 20+.

Basic Pipeline

trigger:
  - main

pool:
  vmImage: ubuntu-latest

steps:
  - task: NodeTool@0
    inputs:
      versionSpec: '22.x'

  - script: npx @vibgrate/cli scan . --fail-on error
    displayName: Vibgrate Drift Scan

SARIF Artifact Publishing

steps:
  - task: NodeTool@0
    inputs:
      versionSpec: '22.x'

  - script: npx @vibgrate/cli scan . --format sarif --out vibgrate.sarif --fail-on error
    displayName: Vibgrate Scan

  - task: PublishBuildArtifacts@1
    inputs:
      PathtoPublish: vibgrate.sarif
      ArtifactName: VibgrateSARIF
    condition: always()

Drift Budget Enforcement

  - script: |
      npx @vibgrate/cli scan . \
        --baseline .vibgrate/baseline.json \
        --drift-budget 40 \
        --drift-worsening 5 \
        --fail-on error
    displayName: Vibgrate Scan with Budget

Dashboard Push

  - script: npx @vibgrate/cli push --strict
    displayName: Push to Vibgrate Dashboard
    env:
      VIBGRATE_DSN: $(VIBGRATE_DSN)

Store your DSN in Pipelines → Library → Variable Groups or as a pipeline variable.

PR Decoration

Generate a Markdown report and publish it as a PR comment:

  - script: npx @vibgrate/cli scan . --format md --out drift-report.md
    displayName: Generate Drift Report

  - task: PublishBuildArtifacts@1
    inputs:
      PathtoPublish: drift-report.md
      ArtifactName: DriftReport