diff --git a/.gitea/workflows/main.yml b/.gitea/workflows/main.yml new file mode 100644 index 0000000..5bebf73 --- /dev/null +++ b/.gitea/workflows/main.yml @@ -0,0 +1,42 @@ +name: Terraform CI +run-name: $${{ gitea.actor }} triggered a Terraform CI +on: + push: + branches: + - main + pull_request: + +jobs: + terraform: + runs-on: infra-terraform + + defaults: + run: + working-directory: environments/prod/proxmox + + env: + PROXMOX_VE_ENDPOINT: ${{ secrets.PROXMOX_VE_ENDPOINT }} + PROXMOX_VE_API_TOKEN: ${{ secrets.PROXMOX_VE_API_TOKEN }} + + steps: + - name: Checkout repository + - uses: actions/checkout@v4 + + # Job will fail if you didn't run `terraform fmt -recursive` + - name: Check formatting + run: terraform fmt-check -recursive + + - name: Initialize Terraform modules + run: terraform init + + - name: Validate Terraform + run: terraform validate + + - name: Create Terraform plan + run: terraform plan -out=tfplan + + # Job will apply the plan if pushed to main + - name: Conditionally apply the Terraform plan + if: github.event_name == 'push' && github.ref == 'refs/head/main' + run: terraform apply -auto-approve +