cookiecutter-terragrunt-project
A Cookiecutter template to scaffold
scalable, multi-environment Terragrunt
infrastructure projects: a DRY root configuration (providers, GCS remote
state, version pin), a per-environment config.<env>.yaml, and a set of
shell helpers wrapping the Terragrunt CLI.
Features
- Multi-environment — switch between
dev/staging/prodwith a per-environment YAML config. - DRY — one root
terragrunt.hclevery module inherits viafind_in_parent_folders(). - Batteries included —
.bashrchelpers (switch_env,plan,apply,destroy, …) wrapping the modern Terragrunt CLI. - Pairs with terragrunt-generator
to populate the scaffold with per-module
terragrunt.hclfiles.
Requirements
- Python 3.12+
- Terraform / OpenTofu and Terragrunt (>= v0.73, new CLI)
Usage
Generate a project straight from GitHub (no install needed):
uvx cookiecutter gh:goabonga/cookiecutter-terragrunt-project
# or: cookiecutter gh:goabonga/cookiecutter-terragrunt-project
Or install the published template from PyPI and bake the bundled copy:
pip install cookiecutter-terragrunt-project
cookiecutter "$(python -c 'import cookiecutter_terragrunt_project as p; print(p.__path__[0])')"
Answer the prompts (project_name, default_environment,
remote_state_bucket_name, …) and you get:
<project_slug>/
├── .bashrc # terragrunt helpers (switch_env, plan, apply, …)
├── config.<env>.yaml # per-environment values
└── google/
└── terragrunt.hcl # root config: providers, GCS backend, versions
Day-2 workflow
source .bashrc # adds switch_env / plan / apply / destroy / …
switch_env dev # sets ENV=dev and the gcloud project
plan ./google/network # terragrunt run --all -- plan on a subtree
apply ./google/network/vpc
Development
git clone https://github.com/goabonga/cookiecutter-terragrunt-project.git
cd cookiecutter-terragrunt-project
uv sync
uv run pytest # bake smoke tests
uvx cookiecutter . # generate a project from the working copy
See CONTRIBUTING.md for the workflow, the commit-message convention and the release process. By participating you agree to the Code of Conduct. Security issues: see SECURITY.md.
License
Distributed under the MIT License.
Metadata
Release files for cookiecutter-terragrunt-project 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| cookiecutter_terragrunt_project-0.1.1.tar.gz | 7.3 kB | With provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| cookiecutter_terragrunt_project-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 15.2 kB
Security for cookiecutter-terragrunt-project 0.1.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for cookiecutter_terragrunt_project-0.1.1.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 20, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.