Skip to content

Manual - Apply changes #14

Manual - Apply changes

Manual - Apply changes #14

Workflow file for this run

name: Manual - Apply changes
on:
workflow_dispatch:
inputs:
environment:
type: choice
description: Which environment to deploy to
required: true
default: staging
options:
- staging
- production
jobs:
terraform_deployment:
environment: ${{ inputs.environment }} # secrets are set per environment
env:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
runs-on: ubuntu-latest
name: Manual terraform apply
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Configure Terraform
uses: hashicorp/setup-terraform@v3
- name: Terraform format check
run: terraform fmt -check -diff -recursive
- name: Initialize Terraform
run: terraform init -backend-config="./${{ inputs.environment }}.config" # use branch name as deployment environment
- name: Run Terraform Plan
run: |
terraform plan -var-file="${{ inputs.environment }}.tfvars" -out plan.tfplan >/dev/null && terraform show plan.tfplan
- name: Run Terraform Apply
run: |
terraform apply -auto-approve -var-file="${{ inputs.environment }}.tfvars"