CloudBurn Logo
CloudBurnHome
  • Cost estimation

    • AWS Simple Pricing CalculatorEstimate your AWS stack
    • IaC Cost EstimatorReview costs before merge

    Cost analysis

    • AWS Cost TreeSee where your spend went

    Cost Optimization

    • Unused resourcesFind resources to remove
    • Resource efficiencyImprove what you keep
    • Commitment savingsReview plans and reservations
    • Cost GovernanceBudgets, alerts, and tags

    Product

    • RoadmapWhat's coming next
    • ChangelogProduct updates
    • DocsGuides and reference
    • AboutWhy CloudBurn exists
  • Pricing
  • Blog
  • Tools
Join the CloudBurn Discord community
Join the waitlistWaitlist
Join the CloudBurn Discord community1.8k
Navigation
    • Overview
    • Installation
    • Configuration
    • GitHub Action
    • MCP Plugin
    • VS Code Extension
      • Scan IaC Files
      • Discover AWS
      • scan
      • discover
      • config
      • rules list
      • completion
      • estimate
      • Exit Codes
      • Output Formats
      • CI/CD Integration
      • Resource Explorer Setup
    • Overview
    • Connect an AWS Account
    • Set Up PR Cost Estimation
    • Plans and Billing
    • Workspaces and Members
    • AWS Cost Tree
      • Usage Assumptions
      • Examples
      • Unused Resources
      • Resource Efficiency
      • Commitment Savings
      • Cost Governance
    • Overview
    • Understanding Rules
      • CloudFront
      • CloudTrail
      • CloudWatch
      • AWS Config
      • Cost Explorer
      • Cost Guardrails
      • Cost Optimization Hub
      • DynamoDB
      • EBS
      • EC2
      • ECR
      • ECS
      • EKS
      • ElastiCache
      • ELB
      • EMR
      • KMS
      • Lambda
      • RDS
      • Redshift
      • Route 53
      • S3
      • SageMaker
      • Secrets Manager
      • Tagging
    • Overview
    • Installation
      • Static IaC Scan
      • Discovery Scan
      • CloudBurnClient
      • Types
      • Package Exports
      • Custom Config
      • AWS Credentials
    • Overview
    • Installation
    • Configuration
    • GitHub Action
    • MCP Plugin
    • VS Code Extension
      • Scan IaC Files
      • Discover AWS
      • scan
      • discover
      • config
      • rules list
      • completion
      • estimate
      • Exit Codes
      • Output Formats
      • CI/CD Integration
      • Resource Explorer Setup
    • Overview
    • Connect an AWS Account
    • Set Up PR Cost Estimation
    • Plans and Billing
    • Workspaces and Members
    • AWS Cost Tree
      • Usage Assumptions
      • Examples
      • Unused Resources
      • Resource Efficiency
      • Commitment Savings
      • Cost Governance
    • Overview
    • Understanding Rules
      • CloudFront
      • CloudTrail
      • CloudWatch
      • AWS Config
      • Cost Explorer
      • Cost Guardrails
      • Cost Optimization Hub
      • DynamoDB
      • EBS
      • EC2
      • ECR
      • ECS
      • EKS
      • ElastiCache
      • ELB
      • EMR
      • KMS
      • Lambda
      • RDS
      • Redshift
      • Route 53
      • S3
      • SageMaker
      • Secrets Manager
      • Tagging
    • Overview
    • Installation
      • Static IaC Scan
      • Discovery Scan
      • CloudBurnClient
      • Types
      • Package Exports
      • Custom Config
      • AWS Credentials
Loading documentation page
CloudBurn Logo
CloudBurn

Open-source AWS cost checks and an upcoming platform for cost estimation, optimization, and governance.

1.8k

Product

  • Pricing
  • Roadmap
  • Changelog
  • About
  • Blog
  • Waitlist
  • Docs
  • Contact

Free Tools

  • EC2 Pricing Calculator
  • S3 Pricing Calculator
  • Bedrock Pricing Calculator
  • Fargate Pricing Calculator
  • RDS Pricing Calculator
  • ECS Pricing Calculator
  • Aurora Pricing Calculator
  • All AWS pricing calculators →

CloudBurn Platform · early 2027

Price changes before you deploy. Fix the waste after.

Join now for 30% off, for as long as you keep your plan.

Join the waitlist

Two emails a month at most. Unsubscribe anytime. By signing up you agree to the privacy policy.

CloudBurn © 2026 | Terms & Privacy

Built with ❤️ by Towards the Cloud

  • Pricing
  • Blog
  • Tools
      • Overview
      • Installation
      • Configuration
      • GitHub Action
      • MCP Plugin
      • VS Code Extension
        • Exit Codes
        • Output Formats
        • CI/CD Integration
        • Resource Explorer Setup
      • Overview
      • Installation
      • Configuration
      • GitHub Action
      • MCP Plugin
      • VS Code Extension
        • Exit Codes
        • Output Formats
        • CI/CD Integration
        • Resource Explorer Setup
    CloudBurn CLI

    CI/CD Integration

    Add CloudBurn cost optimization scans to GitHub Actions, GitLab CI, and other pipelines. Check IaC on pull requests and use exit codes to enforce cost rules.

    CloudBurn is designed to fit into CI/CD pipelines as a cost optimization quality gate. Run it on pull requests to catch cost issues before they reach production.

    How it fits into your pipeline

    GitHub Actions

    For GitHub, the CloudBurn GitHub Action is the quickest route. It needs no Node.js setup and adds inline annotations, a sticky pull request comment, and a step summary:

          - uses: actions/checkout@v6
          - uses: towardsthecloud/cloudburn-action@v1
            with:
              fail-on: high
    

    To run the CLI directly instead, add this workflow to .github/workflows/cloudburn.yml:

    name: CloudBurn Cost Check
    on: [pull_request]
    jobs:
      scan:
        runs-on: ubuntu-latest
        steps:
          - uses: actions/checkout@v4
          - uses: actions/setup-node@v4
            with:
              node-version: '24'
          - run: npx cloudburn scan --exit-code
    

    Using npx avoids a separate install step — it downloads and runs CloudBurn in one command.

    This runs on every pull request and fails if CloudBurn finds any cost issues.

    To scan a specific path:

          - run: npx cloudburn scan --exit-code ./infrastructure
    

    To only fail on specific services:

          - run: npx cloudburn scan --exit-code --service ebs,ec2
    

    Severity gates

    --exit-code fails CI on any active finding. To fail CI only above a severity threshold, use --fail-on instead:

          - run: npx cloudburn scan --fail-on high
    

    --fail-on can also be set as iac.fail-on / discovery.fail-on in .cloudburn.yml — see Configuration. --exit-code has no config equivalent. Pass the config file explicitly with --config to apply its rule selection, output defaults, or severity gate — see CI environments for why CI needs the flag.

          - run: npx cloudburn scan --config .cloudburn.yml
    

    GitLab CI

    Add to your .gitlab-ci.yml:

    cloudburn-scan:
      image: node:24
      stage: test
      script:
        - npx cloudburn scan --exit-code
      rules:
        - if: $CI_PIPELINE_SOURCE == "merge_request_event"
    

    JSON output for CI annotations

    Use JSON output to capture structured results for reporting or annotations:

    npx cloudburn --format json scan --exit-code ./iac
    

    In GitHub Actions with output capture:

          - name: Run CloudBurn scan
            id: scan
            run: |
              npx cloudburn --format json scan --exit-code ./iac > cloudburn-results.json || true
          - name: Upload results
            uses: actions/upload-artifact@v4
            with:
              name: cloudburn-results
              path: cloudburn-results.json
    

    Discovery scans in CI

    Running discovery scans in CI requires AWS credentials. Use your CI provider's secret management to inject them.

    GitHub Actions with OIDC (recommended):

    name: CloudBurn Discovery
    on:
      schedule:
        - cron: '0 8 * * 1'  # Weekly on Monday
    
    permissions:
      id-token: write
      contents: read
    
    jobs:
      discover:
        runs-on: ubuntu-latest
        steps:
          - uses: actions/checkout@v4
          - uses: actions/setup-node@v4
            with:
              node-version: '24'
          - uses: aws-actions/configure-aws-credentials@v4
            with:
              role-to-assume: arn:aws:iam::123456789012:role/CloudBurnReadOnly
              aws-region: us-east-1
          - run: npx cloudburn discover --exit-code
    

    Two discovery behaviors matter in CI:

    • A large account may need more than the five-minute default. Raise it with npx cloudburn discover --timeout 900 --exit-code. An expired deadline exits 2, not 1. See Discovery timeout.
    • Every CI run collects from AWS in full. Customer evidence is scoped to the credential session, and OIDC or other temporary credentials give each run a new session, so persisting ~/.cache/cloudburn/evidence between runs shares only public pricing. Size --timeout for a full collection. See Evidence cache.

    What's next

    GitHub ActionScan IaC in pull requests without installing the CLI
    Exit CodesReference for all exit codes and error output
    Output FormatsUse JSON output for custom CI reporting
    cloudburn scanFull scan command reference
    ← PreviousOutput FormatsNext →Resource Explorer Setup

    CloudBurn Platform · early 2027

    Price changes before you deploy. Fix the waste after.

    Join now for 30% off, for as long as you keep your plan.

    Join the waitlist

    Two emails a month at most. Unsubscribe anytime. By signing up you agree to the privacy policy.