test #21
This file contains 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
name: Tests | |
on: [push] | |
defaults: | |
run: | |
shell: sh | |
jobs: | |
fmt: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
include: | |
- directory: ./test_dir/project1 | |
terraform_version: 0.15.0 | |
- directory: ./test_dir/project2 | |
terraform_version: 1.3.3 | |
- directory: ./test_dir/project3/applications/backend-app | |
terraform_version: 1.2.1 | |
- directory: ./test_dir/project3/applications/frontend-app | |
terraform_version: 1.4.1 | |
- directory: ./test_dir/project4 | |
terraform_version: 1.6.1 | |
defaults: | |
run: | |
working-directory: ${{ matrix.directory }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: hashicorp/setup-terraform@v2 | |
with: | |
terraform_version: ${{ matrix.terraform_version }} | |
- run: ./install.sh | |
working-directory: ${{ github.workspace }} | |
- run: tfam fmt -recursive -check | |
init: | |
needs: [fmt] | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
include: | |
- directory: ./test_dir/project1 | |
terraform_version: 0.15.0 | |
- directory: ./test_dir/project2 | |
terraform_version: 1.3.3 | |
- directory: ./test_dir/project3/applications/backend-app | |
terraform_version: 1.2.1 | |
- directory: ./test_dir/project3/applications/frontend-app | |
terraform_version: 1.4.1 | |
- directory: ./test_dir/project4 | |
terraform_version: 1.6.1 | |
defaults: | |
run: | |
working-directory: ${{ matrix.directory }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: hashicorp/setup-terraform@v2 | |
with: | |
terraform_version: ${{ matrix.terraform_version }} | |
- run: ./install.sh | |
working-directory: ${{ github.workspace }} | |
- run: tfam init -no-color | |
validate: | |
needs: [init] | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
include: | |
- directory: ./test_dir/project1 | |
terraform_version: 0.15.0 | |
- directory: ./test_dir/project2 | |
terraform_version: 1.3.3 | |
- directory: ./test_dir/project3/applications/backend-app | |
terraform_version: 1.2.1 | |
- directory: ./test_dir/project3/applications/frontend-app | |
terraform_version: 1.4.1 | |
- directory: ./test_dir/project4 | |
terraform_version: 1.6.1 | |
defaults: | |
run: | |
working-directory: ${{ matrix.directory }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: hashicorp/setup-terraform@v2 | |
with: | |
terraform_version: ${{ matrix.terraform_version }} | |
- run: ./install.sh | |
working-directory: ${{ github.workspace }} | |
- run: tfam init -no-color | |
- run: tfam validate -no-color | |
plan: | |
needs: [validate] | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
include: | |
- directory: ./test_dir/project1 | |
terraform_version: 0.15.0 | |
args: '' | |
- directory: ./test_dir/project2 | |
terraform_version: 1.3.3 | |
args: -var-file=./dev/region_a/service_two.tfvars -var-file=./dev/region_b/service_two.tfvars -var-file=./production/region_a/service_two.tfvars -concurrent | |
- directory: ./test_dir/project3/applications/backend-app | |
terraform_version: 1.2.1 | |
args: '' | |
- directory: ./test_dir/project3/applications/frontend-app | |
terraform_version: 1.4.1 | |
args: '' | |
- directory: ./test_dir/project4 | |
terraform_version: 1.6.1 | |
args: -var-file=vars/us-east1/app-one/dev.tfvars.json -var-file=vars/asia-east1/app-one/dev.tfvars.json | |
defaults: | |
run: | |
working-directory: ${{ matrix.directory }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: hashicorp/setup-terraform@v2 | |
with: | |
terraform_version: ${{ matrix.terraform_version }} | |
- run: ./install.sh | |
working-directory: ${{ github.workspace }} | |
- run: tfam init -no-color | |
- run: tfam plan -no-color ${{ matrix.args }} |