Some checks failed
Tests / setup-tf-providers (terraform) (push) Failing after 7m42s
Tests / setup-tf-providers (tofu) (push) Failing after 3m36s
Tests / examples-project-templates (push) Has been skipped
Tests / examples-modules (terraform) (push) Has been skipped
Tests / examples-modules (tofu) (push) Has been skipped
Tests / modules (terraform) (push) Has been skipped
Tests / modules (tofu) (push) Has been skipped
Tests / fast (terraform) (push) Has been skipped
Tests / schemas (push) Has been skipped
Linting / linting (push) Failing after 4m41s
Create daily release tags
/ Create tag on master if there was activity in last 24 hours (push) Successful in 14s
Cloud Foundation Fabric (CFF) Tools
This directory contains utility scripts and tools used to automate linting, formatting, validation, documentation generation, and testing across the Cloud Foundation Fabric repository.
Categorized Tools
1. Documentation Generation
Tools for automatically generating documentation tables or formats from source configurations.
- tfdoc.py: Automatically generates inputs, outputs, and files documentation tables inside module READMEs.
- schema_docs.py: Recursively parses and compiles JSON schemas into readable, markdown-based documentation tables.
- format_tftest.py: Formats Terraform code blocks containing
# tftestdirectives inside markdown files. - update_schema_links.py: Updates the schema URLs in YAML modelines across a directory to match a specific CDN or versioned source.
- pre-commit-tfdoc.sh: Pre-commit hook script to run
tfdoc.pyupdates and verify README alignment.
2. Testing, Planning & Emulation
Tools to run testing sandboxes, parse plans, and simulate/evaluate agent behaviors.
- skill-turn-harness/: A hybrid Python/SDK-based test harness for developing, running, and grading Antigravity skills.
- generate_plan_summary.py: Generates structured plan summaries of resources and their changes for README examples or
tftest.yamltests. - plan_summary.py: An internal helper script to parse, format, and filter Terraform plan structures for automated test assertions.
- create_e2e_sandbox.sh: Bootstraps an isolated end-to-end sandbox directory to safely provision and test CFF examples.
3. Repository Maintenance & Automation
Tools for version management, automated reviews, GCP service definitions, and release automation.
- changelog.py: Automates the generation and maintenance of the
CHANGELOG.mdbased on Git diffs and version changes. - versions.py: Synchronizes required engine and provider version constraints across standard provider configuration files in the repository.
- build_service_agents.py: Parses the official Google Cloud documentation to build a structured representation of GCP service agents and their properties.
- pr_review.py: Leverages the Gemini API to perform automated, context-aware code reviews on pull requests.
- state_iam.py: Parses and displays authoritative IAM binding configurations directly from a local Terraform state file.
4. Linting, Quality & Compliance
Tools for maintaining style guide compliance, licensing, validation, and content/rule verification.
- check_boilerplate.py: Scans files to verify that correct Google license headers and boilerplates are present.
- check_documentation.py: Recursively verifies that the variables and outputs tables generated inside module
README.mdfiles are up-to-date. - check_links.py: Recursively parses Markdown files to validate external links, internal links, and anchor destinations.
- check_names.py: Evaluates name length constraints and formatting for specified GCP Terraform resources to ensure compatibility.
- check_schema_docs.py: Recursively checks if the Markdown documentation generated from JSON schemas is fully up-to-date.
- check_yaml_schema.py: Validates YAML configuration and factory data files against their defined JSON schema modelines.
- duplicate-diff.py: Verifies content alignment for files that must remain identical across different stages or modules (e.g. schemas, policies).
- lint.sh: A shell script wrapping boilerplate, YAML, and Terraform style and format checks.
- tflint-fast.py: Runs the
tflintlinter against FAST stages by setting them up in temporary isolated environments.