action-terraform-validate
GitHub Action validating Terraform modules
10K+
GitHub Action automatically validating Terraform modules.
terraform validate.This action supports three tag levels for flexible versioning:
vX: latest patch of the major version (e.g., v1).vX.Y: latest patch of the minor version (e.g., v1.2).vX.Y.Z: fixed to a specific release (e.g., v1.2.3). - name: Validate Terraform modules
uses: devops-infra/[email protected]
with:
dir_filter: modules
| Input | Required | Default | Description |
|---|---|---|---|
dir_filter | No | * | Prefixes or sub-directories to search for Terraform modules. Use comma as separator. |
Validate whole Terraform setup in repository root.
name: Validate Terraform
on:
push
jobs:
terraform-validate:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v6
- name: Validate Terraform configuration
uses: devops-infra/[email protected]
Validate Terraform modules only in modules/aws and modules/gcp directories.
name: Validate Terraform
on:
push
jobs:
terraform-validate:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v6
- name: Validate Terraform modules
uses: devops-infra/[email protected]
with:
dir_filter: modules/aws,modules/gcp
Pick the tag level based on your stability needs:
vX.Y.Z: exact immutable release (most predictable)vX.Y: latest patch within one minor linevX: latest patch within one major linename: Use pinned action version
on: [push]
jobs:
terraform-validate:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: devops-infra/[email protected]
id: pin-patch
- uses: devops-infra/[email protected]
id: pin-minor
- uses: devops-infra/action-terraform-validate@v1
id: pin-major
Contributions are welcome! See CONTRIBUTINGโ . This project is licensed under the MIT License - see the LICENSEโ file for details.
MIT โ see LICENSEโ .
If you have any questions or need help, please:
Use the manual workflow .github/workflows/manual-e2e-validate.yml to validate this action against the centralized E2E repository.
mode=image validates a published image tag (recommended for -test and -rc release checks).mode=ref validates ref-oriented E2E paths against stable pinned action refs.CI/CD automation also runs these E2E checks automatically:
-rc).Example trigger inputs:
mode=ref
mode=image
image_tag=v1.2.3-test
To publish images from a fork, set these variables so Task uses your registry identities:
DOCKER_USERNAME, DOCKER_ORG_NAME, GITHUB_USERNAME, GITHUB_ORG_NAME.
Two supported options (environment variables take precedence over .env):
# .env (local only, not committed)
DOCKER_USERNAME=your-dockerhub-user
DOCKER_ORG_NAME=your-dockerhub-org
GITHUB_USERNAME=your-github-user
GITHUB_ORG_NAME=your-github-org
# Shell override
DOCKER_USERNAME=your-dockerhub-user \
DOCKER_ORG_NAME=your-dockerhub-org \
GITHUB_USERNAME=your-github-user \
GITHUB_ORG_NAME=your-github-org \
task docker:build
Recommended setup:
.env file.DOCKER_TOKEN and GITHUB_TOKEN.Publish images without a release:
(Manual) Release Create workflow with build_only: true to build and push images without tagging a release.Content type
Image
Digest
sha256:ddd39e8fbโฆ
Size
44.1 MB
Last updated
7 days ago
docker pull devopsinfra/action-terraform-validate:latest-testPulls:
607
Jul 6 to Jul 12