{"repo":"masterpointio/infra-monorepo-template","free":true,"listed":false,"github":"https://github.com/masterpointio/infra-monorepo-template","clone":"git clone https://github.com/masterpointio/infra-monorepo-template.git","description":"Lightweight TF child and root module templates that Masterpoint recommends for internal use by our clients","language":"HCL","stars":11,"topics":["opentofu","template","terraform"],"license":"Apache-2.0","category":"deployment-docker-iac","readme_excerpt":"infra-monorepo-template This repository serves as an example and template for how Masterpoint thinks about organizing a vanilla Terraform or OpenTofu (from now on referred to as \"TF\") monorepo with root modules, child modules, and accompanying tooling. This includes example configurations and recommendations around the following topics: 1. Example organizational structure for an IaC Monorepo (Multi-instance Root Modules + Child Modules) 1. Root module example is provided in the root-modules/template-root-module directory. 2. Child module example is provided in the child-modules/random-pet directory 2. Recommendations for module file structure with file-by-file guidance 3. Recommendations for version pinning TF + Providers 4. Managing which TF binary is used per project using Aqua 5. Guidance on linting + CI for TF 6. Renovate to Automate Dependency Updates 7. Frequently Asked Questions Structure This template includes a recommended layout for both root modules and child TF modules. Each file has a specific purpose and set of best practices. While many principles apply to both root and child modules, any differences are noted below. For root modules: For child modules: File-by-File Guidance The principles below apply to both root and child modules, unless otherwise specified. 1. main.tf - Purpose: Defines core resources and the module’s primary logic. In root modules, this may also include calls to child modules. - Best Practices: - Resource definitions: Declare here all the p","default_branch":null,"files":null,"tree":[],"storefront":"/r/masterpointio","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/masterpointio/infra-monorepo-template/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}