Skip to content

Add optional billing budgets for AW folder and updated associated docs.#85

Open
Calvin-Cheng1 wants to merge 3 commits into
mainfrom
feat/billing-budgets
Open

Add optional billing budgets for AW folder and updated associated docs.#85
Calvin-Cheng1 wants to merge 3 commits into
mainfrom
feat/billing-budgets

Conversation

@Calvin-Cheng1

@Calvin-Cheng1 Calvin-Cheng1 commented Jun 8, 2026

Copy link
Copy Markdown
Collaborator

Description

This PR introduces the ability to configure optional billing budgets for the top-level folder of a landing zone created via the 0-bootstrap stage in fast/stages-aw. This allows for automated cost monitoring and alerting for all projects within the landing zone folder hierarchy.

Changes

  • New Feature: Added a billing_budget_amount variable to the 0-bootstrap stage, allowing users to specify a budget amount and optional threshold rules
    (defaults to 50%, 75%, and 90%).
  • Implementation: Created fast/stages-aw/0-bootstrap/budgets.tf which uses the billing-account module to create the budget.
  • Documentation:
    • Updated the stage's README.md with a new "Billing Budgets" section.
    • Added the new variable to the documentation's input table.
    • Included a commented-out example in terraform.tfvars.sample for easier onboarding.

Fixes #5

Type of Change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation update

Deployment & Compliance Impact

  • Applicable Regimes:
    • US Region Restricted (e.g., Access Policy constraint)
    • FedRAMP Moderate
    • FedRAMP High
    • DoD IL4
    • DoD IL5
    • General / All
  • NIST 800-53r5 Controls: (If this PR helps satisfy or modifies control implementations, list them here)

Checklist

Code Quality & Reusability

  • My code adheres to the Maximize Reusability principle. I have not redefined common elements and have reused existing base configurations and modules where possible.
  • I have checked that no existing module or configuration in modules/ or fast/ can be leveraged for this change.
  • My code follows the established naming conventions outlined in documentation/naming-convention.md.

Documentation

  • I have updated the README.md of the modified module or blueprint.
  • I have added/updated documentation for inputs (variables) and outputs.

Security

  • My change adheres to GCP security best practices and the principle of least privilege.
  • [X I have ensured compliance with the targeted regime (FedRAMP High, IL5, etc.).

Testing

  • I have tested my changes locally.
  • I have included details of my testing in this PR.

Testing Performed

Local terraform apply

@Calvin-Cheng1 Calvin-Cheng1 added the enhancement New feature or request label Jun 8, 2026
Comment thread fast/stages-aw/0-bootstrap/budgets.tf Outdated

Due to limitations of API availability, manual steps have to be followed to enable billing export within the billing Google Cloud Project to BigQuery dataset `billing_export`, which will be created as part of the bootstrap stage. The process to share billing data [is outlined here](https://cloud.google.com/billing/docs/how-to/export-data-bigquery-setup#enable-bq-export).

#### Billing Budgets

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this be three or four headings deep?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Set it as 4 so it is nested within the Billing Account section

Comment thread fast/stages-aw/0-bootstrap/budgets.tf Outdated
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature Request] Alerting Policies for Cloud Spend at 0-bootstrap phase

3 participants