Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.opentaco.dev/llms.txt

Use this file to discover all available pages before exploring further.

In Backendless mode, digger provides two means scoping drift detection.

Using dedicated config

  • Create a dedicated digger.yml that lists only the projects or blocks you want scanned.
  • Point your drift workflow to that file using the digger-filename input.
  • Repeat per environment if needed.

Examples

Explicit projects

# digger-drift-dev.yml
projects:
  - name: app-dev-a
    dir: terraform/aws_devel/app-a
    workflow: default
  - name: app-dev-b
    dir: terraform/aws_devel/app-b
    workflow: default

Terragrunt-generated blocks

# digger-drift-dev.yml
generate_projects:
  blocks:
    - block_name: aws_devel
      terragrunt: true
      root_dir: terraform/aws_devel/
      workflow: default

Referencing the file in your workflow

name: Drift (dev)

on:
  workflow_dispatch:

jobs:
  detect-drift:
    runs-on: ubuntu-latest
    steps:
      - uses: diggerhq/digger@vLatest
        with:
          mode: drift-detection
          no-backend: true
          digger-filename: digger-drift-dev.yml

Using drift patterns

Add drift_include_patterns and drift_exclude_patterns under generate_projects in your main digger.yml:
generate_projects:
  blocks:
    - block_name: infra
      root_dir: "infra/"
      workflow: default
      include: "**"
  drift_include_patterns:
    - "infra/prod/**"
    - "infra/staging/**"
  drift_exclude_patterns:
    - "infra/_global/**"
Only projects whose dir matches an include pattern and does not match an exclude pattern will run drift detection. Exclude patterns are evaluated after include patterns.

Notes

  • Patterns use doublestar glob matching against the project directory path.
  • Both fields default to []. If drift_include_patterns is empty, all projects are included.