Skip to content

Commit f28c8cf

Browse files
authored
Fix: [AEA-4902] - use different apigee app per env (#266)
## Summary - Routine Change ### Details - use different apigee app per environment
1 parent 65e7734 commit f28c8cf

File tree

5 files changed

+54
-75
lines changed

5 files changed

+54
-75
lines changed

.devcontainer/devcontainer.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,8 @@
2121
"version": "latest",
2222
"moby": "true",
2323
"installDockerBuildx": "true"
24-
}
24+
},
25+
"ghcr.io/devcontainers/features/github-cli:1": {}
2526
},
2627
"customizations": {
2728
"vscode": {

.github/workflows/ci.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@ jobs:
129129
mockOidClientSecret: ${{ secrets.PTL_MOCK_CLIENT_SECRET }}
130130
CIS2_PRIVATE_KEY: ${{ secrets.PTL_CIS2_PRIVATE_KEY }}
131131
REGRESSION_TESTS_PEM: ${{ secrets.REGRESSION_TESTS_PEM }}
132-
APIGEE_API_KEY: ${{ secrets.APIGEE_API_KEY }}
132+
APIGEE_API_KEY: ${{ secrets.APIGEE_DEV_API_KEY }}
133133

134134
create_release_notes:
135135
needs: [tag_release, package_code, get_commit_id, release_dev]
@@ -182,4 +182,4 @@ jobs:
182182
mockOidClientSecret: ${{ secrets.PTL_MOCK_CLIENT_SECRET }}
183183
CIS2_PRIVATE_KEY: ${{ secrets.PTL_CIS2_PRIVATE_KEY }}
184184
REGRESSION_TESTS_PEM: ${{ secrets.REGRESSION_TESTS_PEM }}
185-
APIGEE_API_KEY: ${{ secrets.APIGEE_API_KEY }}
185+
APIGEE_API_KEY: ${{ secrets.APIGEE_QA_API_KEY }}

.github/workflows/pull_request.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ jobs:
9494
mockOidClientSecret: ${{ secrets.PTL_MOCK_CLIENT_SECRET }}
9595
CIS2_PRIVATE_KEY: ${{ secrets.PTL_CIS2_PRIVATE_KEY }}
9696
REGRESSION_TESTS_PEM: ${{ secrets.REGRESSION_TESTS_PEM }}
97-
APIGEE_API_KEY: ${{ secrets.APIGEE_API_KEY }}
97+
APIGEE_API_KEY: ${{ secrets.APIGEE_DEV_API_KEY }}
9898

9999
report_deployed_url:
100100
needs: [release_code, get_issue_number]

.github/workflows/release.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ jobs:
148148
mockOidClientSecret: ${{ secrets.PTL_MOCK_CLIENT_SECRET }}
149149
CIS2_PRIVATE_KEY: ${{ secrets.PTL_CIS2_PRIVATE_KEY }}
150150
REGRESSION_TESTS_PEM: ${{ secrets.REGRESSION_TESTS_PEM }}
151-
APIGEE_API_KEY: ${{ secrets.APIGEE_API_KEY }}
151+
APIGEE_API_KEY: ${{ secrets.APIGEE_DEV_API_KEY }}
152152

153153
create_release_notes:
154154
needs: [tag_release, package_code, get_commit_id, release_dev]
@@ -200,7 +200,7 @@ jobs:
200200
mockOidClientSecret: ${{ secrets.PTL_MOCK_CLIENT_SECRET }}
201201
CIS2_PRIVATE_KEY: ${{ secrets.PTL_CIS2_PRIVATE_KEY }}
202202
REGRESSION_TESTS_PEM: ${{ secrets.REGRESSION_TESTS_PEM }}
203-
APIGEE_API_KEY: ${{ secrets.APIGEE_API_KEY }}
203+
APIGEE_API_KEY: ${{ secrets.APIGEE_REF_API_KEY }}
204204

205205
release_qa:
206206
needs: [tag_release, package_code, get_commit_id, release_dev]
@@ -237,7 +237,7 @@ jobs:
237237
mockOidClientSecret: ${{ secrets.PTL_MOCK_CLIENT_SECRET }}
238238
CIS2_PRIVATE_KEY: ${{ secrets.PTL_CIS2_PRIVATE_KEY }}
239239
REGRESSION_TESTS_PEM: ${{ secrets.REGRESSION_TESTS_PEM }}
240-
APIGEE_API_KEY: ${{ secrets.APIGEE_API_KEY }}
240+
APIGEE_API_KEY: ${{ secrets.APIGEE_QA_API_KEY }}
241241

242242
release_int:
243243
needs: [tag_release, package_code, get_commit_id, release_qa]
@@ -274,7 +274,7 @@ jobs:
274274
mockOidClientSecret: ${{ secrets.PTL_MOCK_CLIENT_SECRET }}
275275
CIS2_PRIVATE_KEY: ${{ secrets.PTL_CIS2_PRIVATE_KEY }}
276276
REGRESSION_TESTS_PEM: ${{ secrets.REGRESSION_TESTS_PEM }}
277-
APIGEE_API_KEY: ${{ secrets.APIGEE_API_KEY }}
277+
APIGEE_API_KEY: ${{ secrets.APIGEE_INT_API_KEY }}
278278

279279
# release_prod:
280280
# needs: [tag_release, package_code, get_commit_id, release_int]

scripts/set_secrets.sh

Lines changed: 45 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -7,81 +7,59 @@ check_gh_logged_in() {
77
fi
88
}
99

10-
set_secrets() {
11-
gh secret set PTL_PRIMARY_OIDC_CLIENT_ID \
12-
--repo NHSDigital/eps-prescription-tracker-ui \
13-
--app actions \
14-
--body "${Cis2PTLClientID}"
15-
16-
gh secret set PTL_PRIMARY_OIDC_CLIENT_SECRET \
17-
--repo NHSDigital/eps-prescription-tracker-ui \
18-
--app actions \
19-
--body "$Cis2PTLClientSecret"
20-
21-
gh secret set PTL_CIS2_PRIVATE_KEY \
22-
--repo NHSDigital/eps-prescription-tracker-ui \
23-
--app actions \
24-
--body "$private_key"
25-
26-
gh secret set PTL_PRIMARY_OIDC_CLIENT_ID \
27-
--repo NHSDigital/eps-prescription-tracker-ui \
28-
--app dependabot \
29-
--body "${Cis2PTLClientID}"
30-
31-
gh secret set PTL_PRIMARY_OIDC_CLIENT_SECRET \
32-
--repo NHSDigital/eps-prescription-tracker-ui \
33-
--app dependabot \
34-
--body "$Cis2PTLClientSecret"
35-
36-
gh secret set PTL_CIS2_PRIVATE_KEY \
37-
--repo NHSDigital/eps-prescription-tracker-ui \
38-
--app dependabot \
39-
--body "$private_key"
40-
41-
# mock secrets
42-
43-
gh secret set PTL_MOCK_CLIENT_ID \
44-
--repo NHSDigital/eps-prescription-tracker-ui \
45-
--app actions \
46-
--body "$mockClientID"
47-
48-
gh secret set PTL_MOCK_CLIENT_SECRET \
49-
--repo NHSDigital/eps-prescription-tracker-ui \
50-
--app actions \
51-
--body "$mockClientSecret"
52-
53-
gh secret set PTL_MOCK_CLIENT_ID \
54-
--repo NHSDigital/eps-prescription-tracker-ui \
55-
--app dependabot \
56-
--body "$mockClientID"
57-
58-
gh secret set PTL_MOCK_CLIENT_SECRET \
10+
set_repository_secret() {
11+
secret_name=$1
12+
secret_value=$2
13+
app=$3
14+
if [ -z "${secret_value}" ]; then
15+
echo "value passed for secret ${secret_name} is unset or set to the empty string. Not setting"
16+
return 0
17+
fi
18+
echo
19+
echo "*****************************************"
20+
echo
21+
echo "setting value for ${secret_name}"
22+
echo "secret_value: ${secret_value}"
23+
read -r -p "Press Enter to set secret or ctrl+c to exit"
24+
gh secret set "${secret_name}" \
5925
--repo NHSDigital/eps-prescription-tracker-ui \
60-
--app dependabot \
61-
--body "$mockClientSecret"
26+
--app "${app}" \
27+
--body "${secret_value}"
6228
}
6329

64-
if [ -z "${Cis2PTLClientID}" ]; then
65-
echo "Cis2PTLClientID is unset or set to the empty string"
66-
exit 1
67-
fi
68-
if [ -z "${Cis2PTLClientSecret}" ]; then
69-
echo "Cis2PTLClientSecret is unset or set to the empty string"
70-
exit 1
71-
fi
72-
if [ -z "${mockClientID}" ]; then
73-
echo "mockClientID is unset or set to the empty string"
74-
exit 1
75-
fi
76-
if [ -z "${mockClientSecret}" ]; then
77-
echo "mockClientSecret is unset or set to the empty string"
78-
exit 1
79-
fi
8030

31+
# this is a locally generated private key
32+
# the public part of this keypair should be put in packages/staticContent/jwks/jwks.json
8133
private_key=$(cat .secrets/eps-cpt-ui-test.pem)
8234
if [ -z "${private_key}" ]; then
8335
echo "private_key is unset or set to the empty string"
8436
exit 1
8537
fi
8638
check_gh_logged_in
8739
set_secrets
40+
41+
# these are from cis2 client set up
42+
set_repository_secret PTL_PRIMARY_OIDC_CLIENT_ID "${PTL_PRIMARY_OIDC_CLIENT_ID}" "actions"
43+
set_repository_secret PTL_PRIMARY_OIDC_CLIENT_SECRET "${PTL_PRIMARY_OIDC_CLIENT_SECRET}" "actions"
44+
45+
# this is a locally generated private key
46+
# the public part of this keypair should be put in packages/staticContent/jwks/jwks.json
47+
set_repository_secret PTL_CIS2_PRIVATE_KEY "${private_key}" "actions"
48+
49+
# need to set these for dependabot as well
50+
set_repository_secret PTL_PRIMARY_OIDC_CLIENT_ID "${PTL_PRIMARY_OIDC_CLIENT_ID}" "dependabot"
51+
set_repository_secret PTL_PRIMARY_OIDC_CLIENT_SECRET "${PTL_PRIMARY_OIDC_CLIENT_SECRET}" "dependabot"
52+
set_repository_secret PTL_CIS2_PRIVATE_KEY "${private_key}" "dependabot"
53+
54+
# these are from the keycloak setup of the mock client
55+
set_repository_secret PTL_MOCK_CLIENT_ID "${PTL_MOCK_CLIENT_ID}" "actions"
56+
set_repository_secret PTL_MOCK_CLIENT_SECRET "${PTL_MOCK_CLIENT_SECRET}" "actions"
57+
set_repository_secret PTL_MOCK_CLIENT_ID "${PTL_MOCK_CLIENT_ID}" "dependabot"
58+
set_repository_secret PTL_MOCK_CLIENT_SECRET "${PTL_MOCK_CLIENT_SECRET}" "dependabot"
59+
60+
# these are from the apigee client set up
61+
set_repository_secret APIGEE_DEV_API_KEY "${APIGEE_DEV_API_KEY}" "actions"
62+
set_repository_secret APIGEE_DEV_API_KEY "${APIGEE_DEV_API_KEY}" "dependabot"
63+
set_repository_secret APIGEE_REF_API_KEY "${APIGEE_REF_API_KEY}" "actions"
64+
set_repository_secret APIGEE_QA_API_KEY "${APIGEE_QA_API_KEY}" "actions"
65+
set_repository_secret APIGEE_INT_API_KEY "${APIGEE_INT_API_KEY}" "actions"

0 commit comments

Comments
 (0)