Skip to content

ci: add HCL validate/fmt workflow and Makefile targets for #71 (Phase 1)#100

Merged
rfay merged 1 commit intomainfrom
20260430_rfay_ci-phase1-hcl-validate
Apr 30, 2026
Merged

ci: add HCL validate/fmt workflow and Makefile targets for #71 (Phase 1)#100
rfay merged 1 commit intomainfrom
20260430_rfay_ci-phase1-hcl-validate

Conversation

@rfay
Copy link
Copy Markdown
Member

@rfay rfay commented Apr 30, 2026

The Issue

Part of #71 (automated testing). Phase 1: static HCL validation that requires no live infrastructure.

How This PR Solves The Issue

Adds .github/workflows/validate.yml which runs on every push and PR:

  • terraform validate — checks HCL syntax and provider schema correctness for each of the three templates (user-defined-web, drupal-core, freeform) using a matrix job
  • terraform fmt -check -recursive — enforces consistent formatting across all templates

Also adds make validate and make fmt-check as local equivalents so the same checks can be run before pushing.

Applies terraform fmt fixes to all three templates so CI passes immediately from the first run.

Manual Testing Instructions

# Verify fmt check passes
make fmt-check

# Verify all templates validate (requires terraform in PATH)
make validate

Automated Testing Overview

This PR is the automated testing — the workflow will run on this PR itself and on all future PRs, providing immediate feedback on HCL syntax and formatting issues.

Release/Deployment Notes

No impact on deployed templates or workspaces. CI-only change.

Adds .github/workflows/validate.yml running terraform validate and
terraform fmt -check on all three templates for every push/PR.
Adds make validate and make fmt-check as local equivalents.
Also applies terraform fmt fixes to all three templates so CI passes
from the first run.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@rfay rfay merged commit 900a46a into main Apr 30, 2026
4 checks passed
@rfay rfay deleted the 20260430_rfay_ci-phase1-hcl-validate branch April 30, 2026 18:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant