@@ -80,55 +80,35 @@ jobs:
8080 aws-region : ${{ secrets.AWS_REGION || 'us-west-1' }}
8181 role-to-assume : ${{ secrets.AWS_ROLE_ARN }}
8282 role-session-name : GitHub_to_AWS_via_FederatedOIDC
83- - name : Setup OpenTofu
84- uses : opentofu/setup-opentofu@v1
85- with :
86- tofu_wrapper : false
87- - name : Display OpenTofu version
88- run : tofu version
89- - name : Set optional variables
90- env :
91- # For any of these that have a value, the corresponding TF_VAR_*
92- # environment variable will be set.
93- APPLY_DATABASE_UPDATES_IMMEDIATELY : ${{ secrets.TF_VAR_APPLY_DATABASE_UPDATES_IMMEDIATELY }}
94- TF_VAR_CONSUMER_CONTAINER_COUNT : ${{ secrets.TF_VAR_CONSUMER_CONTAINER_COUNT }}
95- CONSUMER_CPU : ${{ secrets.TF_VAR_CONSUMER_CPU }}
96- CONSUMER_MEMORY : ${{ secrets.TF_VAR_CONSUMER_MEMORY }}
97- DATABASE_SKIP_FINAL_SNAPSHOT : ${{ secrets.TF_VAR_DATABASE_SKIP_FINAL_SNAPSHOT }}
98- DELETION_PROTECTION : ${{ secrets.TF_VAR_DELETION_PROTECTION }}
99- DEPLOYMENT_ENVIRONMENTS : ${{ secrets.TF_VAR_DEPLOYMENT_ENVIRONMENTS }}
100- ENVIRONMENT : ${{ secrets.TF_VAR_ENVIRONMENT }}
101- EXPORT_EXPIRATION : ${{ secrets.TF_VAR_EXPORT_EXPIRATION }}
102- IMAGE_TAGS_MUTABLE : ${{ secrets.TF_VAR_IMAGE_TAGS_MUTABLE }}
103- KEY_RECOVERY_PERIOD : ${{ secrets.TF_VAR_KEY_RECOVERY_PERIOD }}
104- PROGRAM : ${{ secrets.TF_VAR_PROGRAM }}
105- PROJECT : ${{ secrets.TF_VAR_PROJECT }}
106- REPOSITORY : ${{ secrets.TF_VAR_REPOSITORY }}
107- run : |
108- variables=(
109- "apply_database_updates_immediately" "consumer_container_count"
110- "consumer_cpu" "consumer_memory" "database_skip_final_snapshot"
111- "deletion_protection" "deployment_environments" "environment"
112- "export_expiration" "image_tags_mutable" "key_recovery_period"
113- "program" "project" "repository"
114- )
115- for var in ${variables[@]}; do
116- name="$(echo $var | tr '[:lower:]' '[:upper:]')"
117- if [ -n "${!name}" ]; then
118- echo "Setting TF_VAR_$var"
119- echo "TF_VAR_$var=${!name}" >> $GITHUB_ENV
120- else
121- echo "$name is not set"
122- fi
123- done
12483 - name : Download plan file
12584 uses : actions/download-artifact@v4
12685 with :
12786 name : ${{ inputs.config }}-tfplan
12887 path : ./tofu/config/${{ inputs.config }}
129- - name : Initialize OpenTofu
130- working-directory : ./tofu/config/${{ inputs.config }}
131- run : tofu init
88+ - name : Setup OpenTofu
89+ uses : ./.github/actions/setup-opentofu
90+ env :
91+ TF_VAR_APPLY_DATABASE_UPDATES_IMMEDIATELY : ${{ secrets.TF_VAR_APPLY_DATABASE_UPDATES_IMMEDIATELY }}
92+ TF_VAR_CONSUMER_CONTAINER_COUNT : ${{ secrets.TF_VAR_CONSUMER_CONTAINER_COUNT }}
93+ TF_VAR_CONSUMER_CPU : ${{ secrets.TF_VAR_CONSUMER_CPU }}
94+ TF_VAR_CONSUMER_MEMORY : ${{ secrets.TF_VAR_CONSUMER_MEMORY }}
95+ TF_VAR_DATABASE_SKIP_FINAL_SNAPSHOT : ${{ secrets.TF_VAR_DATABASE_SKIP_FINAL_SNAPSHOT }}
96+ TF_VAR_DATABASE_INSTANCE_COUNT : ${{ secrets.TF_VAR_DATABASE_INSTANCE_COUNT }}
97+ TF_VAR_DELETION_PROTECTION : ${{ secrets.TF_VAR_DELETION_PROTECTION }}
98+ TF_VAR_DEPLOYMENT_ENVIRONMENTS : ${{ secrets.TF_VAR_DEPLOYMENT_ENVIRONMENTS }}
99+ TF_VAR_ENVIRONMENT : ${{ inputs.environment }}
100+ TF_VAR_EXPORT_EXPIRATION : ${{ secrets.TF_VAR_EXPORT_EXPIRATION }}
101+ TF_VAR_IMAGE_TAGS_MUTABLE : ${{ secrets.TF_VAR_IMAGE_TAGS_MUTABLE }}
102+ TF_VAR_KEY_RECOVERY_PERIOD : ${{ secrets.TF_VAR_KEY_RECOVERY_PERIOD }}
103+ TF_VAR_PROJECT : ${{ secrets.TF_VAR_PROJECT }}
104+ TF_VAR_PROGRAM : ${{ secrets.TF_VAR_PROGRAM }}
105+ TF_VAR_REPO_OIDC_ARN : ${{ secrets.TF_VAR_REPO_OIDC_ARN }}
106+ TF_VAR_REPOSITORY : ${{ secrets.TF_VAR_REPOSITORY }}
107+ TF_VAR_VPC_CIDR : ${{ secrets.TF_VAR_VPC_CIDR }}
108+ TF_VAR_VPC_PRIVATE_SUBNET_CIDRS : ${{ secrets.TF_VAR_VPC_PRIVATE_SUBNET_CIDRS }}
109+ TF_VAR_VPC_PUBLIC_SUBNET_CIDRS : ${{ secrets.TF_VAR_VPC_PUBLIC_SUBNET_CIDRS }}
110+ with :
111+ config : ${{ inputs.config }}
132112 - name : Deploy changes
133113 working-directory : ./tofu/config/${{ inputs.config }}
134114 run : tofu apply tfplan
0 commit comments