Tweaks-P1#16
Merged
Merged
Conversation
💰 Infracost reportMonthly estimate generatedThis comment will be updated when code changes. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
TLDR
Stabilises the CI pipeline by pinning tool versions, fixing a race condition in parallel Terraform validation via a provider cache warm-up step, updating all
.terraform.lock.hclfiles to includelinux_amd64hashes, and restructuring the docs tree.Description
This branch bundles several reliability and housekeeping improvements made against the CI pipeline and project documentation. The core problem was non-deterministic failures in the
terraform validatejob: parallelterraform initprocesses were writing the same provider binaries to a shared cache directory simultaneously, causing a "text file busy" race condition. The fix is a sequential cache warm-up step that runs before the parallel validation fan-out. Version pins were also added forinfracost,terraform-docs, and Terraform itself to prevent unexpected breakage from upstream releases. In parallel, the docs folder was reorganised intodesign/anddev/sub-trees, and a Python-basedtf_validate.pyscript was introduced as a developer convenience wrapper.Key Changes
.github/workflows/pipeline.yml): added aCache Terraform providersstep usingactions/cache@v4, a sequentialPre-warm provider cachestep that runs only on cache miss, and version pins for Infracost (v0.10.43), terraform-docs (v0.21.0), and Terraform (1.14.4)..terraform.lock.hclfiles to includelinux_amd64provider hashes, ensuringterraform initsucceeds on the GitHub Actions runner without downloading providers from scratch.scripts/tf_validate.py— a Python 3.11+ CLI (usingtyper+rich) that replicates the CI validation logic locally with a progress bar and summary table.docs/design/anddocs/dev/, added new pages for the CI pipeline, Terraform standards, TF validate tooling, and connectivity test results.vars/terraform.tfand.terraform-versionto1.14.4.