@@ -13,41 +13,15 @@ permissions:
1313 actions : read # This is required for Plan comment
1414 id-token : write # This is required for requesting the JWT
1515 contents : write # This is required for SBOM action
16-
16+
1717jobs :
18-
19- # Terraform apply of base_iam will only occur on a push (merge request completion)
20- terraform_plan_apply_base_iam :
21- if : github.ref == 'refs/heads/main'
22- name : Terraform Plan/Apply (base_iam)
23- runs-on : ubuntu-latest
24- environment : development
25- steps :
26- - name : Checkout branch
27- uses : actions/checkout@v6
28-
29- - name : Apply base_iam
30- uses : ./.github/actions/tf-plan-apply
31- with :
32- aws_assume_role : arn:aws:iam::${{ secrets.AWS_ACCOUNT_ID }}:role/dev-github-bootstrap
33- bucket_prefix : " dev"
34- aws_account_id : ${{ secrets.AWS_ACCOUNT_ID }}
35- aws_region : ${{ vars.AWS_REGION }}
36- working_directory : " ./base_iam" # Use separate base_iam directory
37- workspace : ${{ secrets.AWS_WORKSPACE }}
38- tf_vars_file : ${{ vars.TF_VARS_FILE }}
39- tf_extra_args : " -var aws_account_id=${{ secrets.AWS_ACCOUNT_ID }}"
40-
4118 terraform_plan_apply :
4219 name : Terraform Plan/Apply (ndr-dev)
4320 runs-on : ubuntu-latest
44- needs : terraform_plan_apply_base_iam
45- # Will run when terraform_plan_apply_base_iam completes or is skipped
46- if : always() && (needs.terraform_plan_apply_base_iam.result == 'skipped' || needs.terraform_plan_apply_base_iam.result == 'success')
4721 environment : development
4822 steps :
4923 - name : Checkout
50- uses : actions/checkout@v6
24+ uses : actions/checkout@v5
5125
5226 - name : Configure AWS Credentials
5327 uses : aws-actions/configure-aws-credentials@v5
6034 - name : Setup Terraform
6135 uses : hashicorp/setup-terraform@v3
6236 with :
63- terraform_version : 1.14 .3
37+ terraform_version : 1.13 .3
6438 terraform_wrapper : true
6539
6640 - name : Initialise Terraform
9973 echo "::add-mask::$cert_block"
10074 fi
10175 done || echo "No certificate blocks found to mask."
102-
76+
10377 # Mask sensitive URLs in the Terraform Plan output
10478 grep -Eo 'https://[a-zA-Z0-9.-]+\.execute-api\.[a-zA-Z0-9.-]+\.amazonaws\.com/[a-zA-Z0-9/._-]*' tfplan.txt | while read -r api_url; do
10579 if [ -n "$api_url" ]; then
12397
12498 # Mask GitHub secrets
12599 echo "::add-mask::${{ secrets.AWS_ASSUME_ROLE }}"
126- echo "::add-mask::arn:aws:iam::${{ secrets.AWS_ACCOUNT_ID }}:role/${{ secrets.AWS_WORKSPACE }}-github-actions-role"
127100 echo "::add-mask::${{ secrets.GITHUB_TOKEN }}"
128101
129102 # Mask Terraform variables
@@ -180,7 +153,7 @@ jobs:
180153
181154 // 2. Prepare format of the comment
182155 const output = `### Report for environment: ndr-dev
183-
156+
184157 #### Terraform Initialization ⚙️\`${{ steps.init.outcome }}\`
185158 <details><summary>Initialization Output</summary>
186159
@@ -218,7 +191,7 @@ jobs:
218191 body: output
219192 })
220193 }
221-
194+
222195 github.rest.issues.createComment({
223196 issue_number: context.issue.number,
224197 owner: context.repo.owner,
0 commit comments