Skip to content

GitHub Actions Integration

Block PRs when data quality rules fail — before bad data reaches production.


Quick start

.github/workflows/data-quality.yml
# .github/workflows/data-quality.yml
name: Data Quality Gate

on: [push, pull_request]

jobs:
  aegis:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - name: Run Aegis DQ
        uses: aegis-dq/aegis-dq@v0.7.0
        with:
          rules: rules.yaml
          db: warehouse.duckdb
          fail-on: failures
        env:
          ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}

Inputs

Input Required Default Description
rules Path to rules YAML file
db :memory: DuckDB file path
fail-on failures When to fail: failures | critical | never
no-llm false Skip LLM diagnosis

Outputs

Output Description
rules-checked Total number of rules run
passed Number of rules that passed
failed Number of rules that failed
pass-rate Pass rate as a percentage string
.github/workflows/data-quality.yml
- name: Run Aegis DQ
  id: aegis
  uses: aegis-dq/aegis-dq@v0.7.0
  with:
    rules: rules.yaml
    db: warehouse.duckdb

- name: Print results
  run: |
    echo "Rules checked: ${{ steps.aegis.outputs.rules-checked }}"
    echo "Pass rate: ${{ steps.aegis.outputs.pass-rate }}"

Run without LLM (free)

.github/workflows/data-quality.yml
- name: Run Aegis DQ (no LLM)
  uses: aegis-dq/aegis-dq@v0.7.0
  with:
    rules: rules.yaml
    db: warehouse.duckdb
    no-llm: true

No API key needed. Pure validation — catches rule failures at zero cost.


Exit codes

Code Meaning
0 All rules passed
1 One or more rules failed
2 Configuration or connection error