From 3961a134f48133d48c98d392d9ccdf2d827a4443 Mon Sep 17 00:00:00 2001 From: Aaron Robinson Date: Wed, 22 Nov 2023 12:33:35 +0000 Subject: [PATCH 1/7] test preview payload and updated workflow --- .github/workflows/terraform-github.yml | 7 +++++- scripts/git-create-environments.sh | 35 ++++++++++++++++++-------- 2 files changed, 31 insertions(+), 11 deletions(-) diff --git a/.github/workflows/terraform-github.yml b/.github/workflows/terraform-github.yml index c59d697b0..344d1d63d 100644 --- a/.github/workflows/terraform-github.yml +++ b/.github/workflows/terraform-github.yml @@ -82,7 +82,12 @@ jobs: - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: fetch-depth: 0 # or "2" To retrieve the preceding commit. - - name: Create GitHub member environments + - name: Create GitHub member environments plan + run: bash ./scripts/git-create-environments.sh + env: + DRY_RUN: true + TERRAFORM_GITHUB_TOKEN: ${{ secrets.TERRAFORM_GITHUB_TOKEN }} + - name: Create GitHub member environments apply if: github.event.ref == 'refs/heads/main' run: bash ./scripts/git-create-environments.sh env: diff --git a/scripts/git-create-environments.sh b/scripts/git-create-environments.sh index b8ddffaea..2c90bb620 100755 --- a/scripts/git-create-environments.sh +++ b/scripts/git-create-environments.sh @@ -81,18 +81,33 @@ create_environment() { payload="{\"reviewers\": [${reviewers_json}]}" fi - echo "Payload: $payload" - echo "Repository: ${repository}" - response=$(echo "${payload}" | curl -L -s \ - -X PUT \ - -H "Accept: application/vnd.github+json" \ - -H "Authorization: Bearer ${secret}" \ - -H "X-GitHub-Api-Version: 2022-11-28" \ - https://api.github.com/repos/${repository}/environments/${environment_name}\ - -d @- > /dev/null 2>&1) + if [ "${DRY_RUN}" == "true" ]; then + echo "Payload: $payload" + echo "Repository: ${repository}" + response=$(echo "${payload}" | curl -L -s \ + -X PUT \ + -H "Accept: application/vnd.github+json" \ + -H "Authorization: Bearer ${secret}" \ + -H "X-GitHub-Api-Version: 2022-11-28" \ + -H "X-GitHub-Environments-Preview: true" \ + https://api.github.com/repos/${repository}/environments/${environment_name}\ + -d @- > /dev/null 2>&1) + + echo "API Response: $response" # Print the API response - echo "API Response: $response" # Print the API response + else + echo "Payload: $payload" + echo "Repository: ${repository}" + response=$(echo "${payload}" | curl -L -s \ + -X PUT \ + -H "Accept: application/vnd.github+json" \ + -H "Authorization: Bearer ${secret}" \ + -H "X-GitHub-Api-Version: 2022-11-28" \ + https://api.github.com/repos/${repository}/environments/${environment_name}\ + -d @- > /dev/null 2>&1) + echo "API Response: $response" # Print the API response + fi } create_team_reviewers_json() { From a0bf2026c32b72dcf39d590aa6f648d0647b0ffd Mon Sep 17 00:00:00 2001 From: Aaron Robinson Date: Wed, 22 Nov 2023 13:07:02 +0000 Subject: [PATCH 2/7] add debugging flags --- scripts/git-create-environments.sh | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/scripts/git-create-environments.sh b/scripts/git-create-environments.sh index 2c90bb620..131eca51f 100755 --- a/scripts/git-create-environments.sh +++ b/scripts/git-create-environments.sh @@ -1,6 +1,7 @@ #!/bin/bash set -e +set -x github_org="ministryofjustice" repository="${github_org}/modernisation-platform-environments" @@ -84,7 +85,7 @@ create_environment() { if [ "${DRY_RUN}" == "true" ]; then echo "Payload: $payload" echo "Repository: ${repository}" - response=$(echo "${payload}" | curl -L -s \ + response=$(echo "${payload}" | curl -L -s -i \ -X PUT \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer ${secret}" \ @@ -98,7 +99,7 @@ create_environment() { else echo "Payload: $payload" echo "Repository: ${repository}" - response=$(echo "${payload}" | curl -L -s \ + response=$(echo "${payload}" | curl -L -s -i \ -X PUT \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer ${secret}" \ From 3c409bb8d52bae7ba97350470ab4a2fa96902d09 Mon Sep 17 00:00:00 2001 From: Aaron Robinson Date: Wed, 22 Nov 2023 13:36:11 +0000 Subject: [PATCH 3/7] update additional reviewer --- environments/sprinkler.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/environments/sprinkler.json b/environments/sprinkler.json index b970e5e0a..0697b6c75 100644 --- a/environments/sprinkler.json +++ b/environments/sprinkler.json @@ -10,7 +10,7 @@ "nuke": "rebuild" } ], - "additional_reviewers": ["markgov"] + "additional_reviewers": ["astrobinson"] } ], "tags": { From 9db97a4ee24648ef5883d78e69fa8cc41e2a8ad4 Mon Sep 17 00:00:00 2001 From: Aaron Robinson Date: Thu, 23 Nov 2023 09:31:48 +0000 Subject: [PATCH 4/7] remove api submission for plan run --- scripts/git-create-environments.sh | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/scripts/git-create-environments.sh b/scripts/git-create-environments.sh index 131eca51f..2339a5fbe 100755 --- a/scripts/git-create-environments.sh +++ b/scripts/git-create-environments.sh @@ -83,18 +83,9 @@ create_environment() { fi if [ "${DRY_RUN}" == "true" ]; then - echo "Payload: $payload" + echo "DRY Run Payload: $payload" echo "Repository: ${repository}" - response=$(echo "${payload}" | curl -L -s -i \ - -X PUT \ - -H "Accept: application/vnd.github+json" \ - -H "Authorization: Bearer ${secret}" \ - -H "X-GitHub-Api-Version: 2022-11-28" \ - -H "X-GitHub-Environments-Preview: true" \ - https://api.github.com/repos/${repository}/environments/${environment_name}\ - -d @- > /dev/null 2>&1) - - echo "API Response: $response" # Print the API response + echo "DRY Run Only no payload submission to GitHub API" else echo "Payload: $payload" From e233270048154316bf401ea2745b907c47f09391 Mon Sep 17 00:00:00 2001 From: Aaron Robinson Date: Thu, 23 Nov 2023 09:44:53 +0000 Subject: [PATCH 5/7] remove sprinkler update --- environments/sprinkler.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/environments/sprinkler.json b/environments/sprinkler.json index 0697b6c75..b970e5e0a 100644 --- a/environments/sprinkler.json +++ b/environments/sprinkler.json @@ -10,7 +10,7 @@ "nuke": "rebuild" } ], - "additional_reviewers": ["astrobinson"] + "additional_reviewers": ["markgov"] } ], "tags": { From 9a05e5ef3c3a15e91f1818595eeaf062bea4ef1f Mon Sep 17 00:00:00 2001 From: Aaron Robinson Date: Thu, 23 Nov 2023 10:52:59 +0000 Subject: [PATCH 6/7] update additional reviewer --- environments/sprinkler.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/environments/sprinkler.json b/environments/sprinkler.json index b970e5e0a..0697b6c75 100644 --- a/environments/sprinkler.json +++ b/environments/sprinkler.json @@ -10,7 +10,7 @@ "nuke": "rebuild" } ], - "additional_reviewers": ["markgov"] + "additional_reviewers": ["astrobinson"] } ], "tags": { From 2bf90911561fcf2192caa946ca5e5a26f9a5bb95 Mon Sep 17 00:00:00 2001 From: Aaron Robinson Date: Thu, 23 Nov 2023 12:35:21 +0000 Subject: [PATCH 7/7] remove debugging flag --- environments/sprinkler.json | 2 +- scripts/git-create-environments.sh | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/environments/sprinkler.json b/environments/sprinkler.json index 0697b6c75..b970e5e0a 100644 --- a/environments/sprinkler.json +++ b/environments/sprinkler.json @@ -10,7 +10,7 @@ "nuke": "rebuild" } ], - "additional_reviewers": ["astrobinson"] + "additional_reviewers": ["markgov"] } ], "tags": { diff --git a/scripts/git-create-environments.sh b/scripts/git-create-environments.sh index 2339a5fbe..b9917ac79 100755 --- a/scripts/git-create-environments.sh +++ b/scripts/git-create-environments.sh @@ -1,7 +1,6 @@ #!/bin/bash set -e -set -x github_org="ministryofjustice" repository="${github_org}/modernisation-platform-environments"