diff --git a/.github/workflows/terraform.yaml b/.github/workflows/terraform.yaml index 23bfc7b..39e4ca9 100644 --- a/.github/workflows/terraform.yaml +++ b/.github/workflows/terraform.yaml @@ -1,4 +1,4 @@ -name: Terraform +name: Terraform CI/CD on: push: @@ -12,29 +12,36 @@ jobs: run: working-directory: terraform + container: + image: hashicorp/terraform:1.6.6 + steps: + - name: Install dependencies + run: apk add --no-cache nodejs npm git + - name: Checkout repository uses: actions/checkout@v4 - - name: Setup Terraform - uses: hashicorp/setup-terraform@v3 - - name: Terraform Init - run: terraform init -input=false + run: terraform -chdir=terraform init -input=false - name: Terraform Validate - run: terraform validate + run: terraform -chdir=terraform validate - name: Terraform Plan - run: terraform plan -input=false -out=tfplan + run: terraform -chdir=terraform plan -input=false -out=tfplan - - name: Upload plan + - name: Show plan + run: terraform -chdir=terraform show -no-color tfplan > terraform/plan.txt + + - name: Upload plan artifact uses: actions/upload-artifact@v3 with: name: terraform-plan - path: terraform/tfplan + path: | + terraform/tfplan + terraform/plan.txt - # Optional: apply only on main - name: Terraform Apply if: github.ref == 'refs/heads/main' - run: terraform apply -input=false -auto-approve tfplan + run: terraform -chdir=terraform apply -input=false -auto-approve tfplan