Skip to content

Commit

Permalink
Terraform why this way (#25746)
Browse files Browse the repository at this point in the history
For #18191

Why add another repo? 

Terraform clones the entire repo for every submodule used when running
`terraform init`. For our monorepo, that is 11GB, which significantly
slows down deployment speed using Terraform. By moving our Terraform
modules to a dedicated repo, we reduce this to <1MB, which will shave
minutes off of `terraform init` for anyone who uses it. Because our CI
deployment runs `terraform init` on every environment, this will result
in savings of several hours of CI runners per month.

---------

Co-authored-by: Luke Heath <[email protected]>
  • Loading branch information
rfairburn and lukeheath authored Jan 27, 2025
1 parent 8ee29dc commit de46eb3
Showing 1 changed file with 1 addition and 0 deletions.
1 change: 1 addition & 0 deletions handbook/company/why-this-way.md
Original file line number Diff line number Diff line change
Expand Up @@ -132,6 +132,7 @@ The only exceptions are:
4. **Software vulnerabilities:** Since GitHub only allows one latest release per repository, we currently maintain two repositories to host our CVE/CPE database releases:
- _vulnerabilities:_ [`fleetdm/vulnerabilities`](https://github.com/fleetdm/vulnerabilities)
- _nvd:_ [`fleetdm/nvd`](https://github.com/fleetdm/nvd)
5. **Terraform modules:** Since Terraform clones the entire repo once per tagged version of a module, we maintain a separate repo for Terraform modules at [fleetdm/fleet-terraform](https://github.com/fleetdm/fleet-terraform) to expedite deployments using `terraform init`.


Besides the exceptions above, Fleet does not use any other repositories. Other GitHub repositories in `fleetdm` should be archived and made private.
Expand Down

0 comments on commit de46eb3

Please sign in to comment.