Skip to content

Commit ca4479c

Browse files
committed
fix: DRY stack name and mode
1 parent fe1ee4b commit ca4479c

3 files changed

Lines changed: 23 additions & 15 deletions

File tree

.github/workflows/pull_request.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ jobs:
8787
VERSION_NUMBER: PR-${{ needs.get_issue_number.outputs.issue_number }}
8888
COMMIT_ID: ${{ needs.get_commit_id.outputs.commit_id }}
8989

90-
cdk_release_code:
90+
cdk_release_stateless_code:
9191
needs:
9292
[get_issue_number, cdk_package_code, get_commit_id, get_config_values, cdk_release_stateful_code]
9393
uses: ./.github/workflows/cdk_release_code.yml
@@ -97,7 +97,7 @@ jobs:
9797
with:
9898
pinned_image: ${{ needs.get_config_values.outputs.pinned_image }}
9999
BRANCH_NAME: ${{ github.event.pull_request.head.ref }}
100-
STACK_NAME: psu-cdk-pr-${{needs.get_issue_number.outputs.issue_number}}
100+
STACK_NAME: psu-api-pr-${{needs.get_issue_number.outputs.issue_number}}
101101
AWS_ENVIRONMENT: dev
102102
VERSION_NUMBER: PR-${{ needs.get_issue_number.outputs.issue_number }}
103103
COMMIT_ID: ${{ needs.get_commit_id.outputs.commit_id }}
@@ -109,7 +109,7 @@ jobs:
109109
FORWARD_CSOC_LOGS: false
110110
DEPLOY_CHECK_PRESCRIPTION_STATUS_UPDATE: true
111111
EXPOSE_GET_STATUS_UPDATES: false
112-
SAM_STACK_NAME: psu-pr-${{needs.get_issue_number.outputs.issue_number}}
112+
SAM_STACK_NAME: psu-api-pr-${{needs.get_issue_number.outputs.issue_number}}
113113
ENABLE_POST_DATED_NOTIFICATIONS: true
114114
REQUIRE_APPLICATION_NAME: false
115115
ENABLE_BACKUP: false
@@ -126,7 +126,7 @@ jobs:
126126
with:
127127
pinned_image: ${{ needs.get_config_values.outputs.pinned_image }}
128128
BRANCH_NAME: ${{ github.event.pull_request.head.ref }}
129-
STACK_NAME: psu-cdk-pr-${{needs.get_issue_number.outputs.issue_number}}-stateful
129+
STACK_NAME: psu-api-pr-${{needs.get_issue_number.outputs.issue_number}}
130130
AWS_ENVIRONMENT: dev
131131
VERSION_NUMBER: PR-${{ needs.get_issue_number.outputs.issue_number }}
132132
COMMIT_ID: ${{ needs.get_commit_id.outputs.commit_id }}
@@ -222,7 +222,7 @@ jobs:
222222
pinned_image: ${{ needs.get_config_values.outputs.pinned_image }}
223223
BRANCH_NAME: ${{ github.event.pull_request.head.ref }}
224224
APP_NAME: PsuApiSandboxApp
225-
STACK_NAME: psu-pr-${{needs.get_issue_number.outputs.issue_number}}-sandbox
225+
STACK_NAME: psu-api-pr-${{needs.get_issue_number.outputs.issue_number}}-sandbox
226226
AWS_ENVIRONMENT: dev
227227
VERSION_NUMBER: PR-${{ needs.get_issue_number.outputs.issue_number }}
228228
COMMIT_ID: ${{ needs.get_commit_id.outputs.commit_id }}

Makefile

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,10 @@ SHELL = /bin/bash
22
.SHELLFLAGS = -o pipefail -c
33
export CDK_APP_NAME=PsuApiApp
44
export CDK_CONFIG_stackMode=stateless
5-
export CDK_CONFIG_stackName=${stack_name}
6-
export CDK_CONFIG_samStackName=${stack_name}
5+
CDK_CONFIG_stackName ?= ${stack_name}
6+
export CDK_CONFIG_stackName
7+
CDK_CONFIG_samStackName ?= ${stack_name}
8+
export CDK_CONFIG_samStackName
79
export CDK_CONFIG_versionNumber=undefined
810
export CDK_CONFIG_commitId=undefined
911
export CDK_CONFIG_isPullRequest=true
@@ -265,7 +267,7 @@ cdk-synth: cdk-stateful-synth cdk-stateless-synth
265267
cdk-stateful-deploy:
266268
CDK_APP_NAME=PsuApiApp \
267269
CDK_CONFIG_stackMode=stateful \
268-
CDK_CONFIG_stackName=psu-cdk-stateful \
270+
CDK_CONFIG_stackName="$${CDK_CONFIG_stackName:-$${stack_name:-psu-cdk}}" \
269271
CDK_CONFIG_logRetentionInDays=30 \
270272
CDK_CONFIG_environment=dev \
271273
CDK_CONFIG_enableDynamoDBAutoScaling=false \
@@ -276,8 +278,8 @@ cdk-stateful-deploy:
276278
cdk-stateless-deploy:
277279
CDK_APP_NAME=PsuApiApp \
278280
CDK_CONFIG_stackMode=stateless \
279-
CDK_CONFIG_stackName=psu-cdk \
280-
CDK_CONFIG_samStackName=psu \
281+
CDK_CONFIG_stackName="$${CDK_CONFIG_stackName:-$${stack_name:-psu-cdk}}" \
282+
CDK_CONFIG_samStackName="$${CDK_CONFIG_samStackName:-$${CDK_CONFIG_stackName:-$${stack_name:-psu-cdk}}}" \
281283
CDK_CONFIG_logRetentionInDays=30 \
282284
CDK_CONFIG_logLevel=DEBUG \
283285
CDK_CONFIG_environment=dev \
@@ -293,8 +295,8 @@ cdk-stateless-deploy:
293295
cdk-stateless-synth:
294296
CDK_APP_NAME=PsuApiApp \
295297
CDK_CONFIG_stackMode=stateless \
296-
CDK_CONFIG_stackName=psu-cdk \
297-
CDK_CONFIG_samStackName=psu \
298+
CDK_CONFIG_stackName="$${CDK_CONFIG_stackName:-$${stack_name:-psu-cdk}}" \
299+
CDK_CONFIG_samStackName="$${CDK_CONFIG_samStackName:-$${CDK_CONFIG_stackName:-$${stack_name:-psu-cdk}}}" \
298300
CDK_CONFIG_logRetentionInDays=30 \
299301
CDK_CONFIG_logLevel=DEBUG \
300302
CDK_CONFIG_environment=dev \
@@ -309,7 +311,7 @@ cdk-stateless-synth:
309311
cdk-stateful-synth:
310312
CDK_APP_NAME=PsuApiApp \
311313
CDK_CONFIG_stackMode=stateful \
312-
CDK_CONFIG_stackName=psu-cdk-stateful \
314+
CDK_CONFIG_stackName="$${CDK_CONFIG_stackName:-$${stack_name:-psu-cdk}}" \
313315
CDK_CONFIG_logRetentionInDays=30 \
314316
CDK_CONFIG_environment=dev \
315317
CDK_CONFIG_enableDynamoDBAutoScaling=false \

packages/cdk/bin/PsuApiApp.ts

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,10 @@ import {PsuApiStatefulStack} from "../stacks/PsuApiStatefulStack"
1010

1111
type StackMode = "stateless" | "stateful"
1212

13+
function mergeStackModeIntoStackName(baseStackName: string, stackMode: StackMode): string {
14+
return `${baseStackName}-${stackMode}`
15+
}
16+
1317
function getStackMode(): StackMode {
1418
const stackMode = getConfigFromEnvVar("stackMode", undefined, "stateless")
1519

@@ -29,11 +33,13 @@ async function main() {
2933
})
3034

3135
const stackMode = getStackMode()
36+
const baseStackName = getConfigFromEnvVar("stackName")
37+
const modeAwareStackName = mergeStackModeIntoStackName(baseStackName, stackMode)
3238

3339
if (stackMode === "stateless") {
3440
new PsuApiStatelessStack(app, "PsuApiStatelessStack", {
3541
...props,
36-
stackName: calculateVersionedStackName(getConfigFromEnvVar("stackName"), props),
42+
stackName: calculateVersionedStackName(modeAwareStackName, props),
3743
samStackName: getConfigFromEnvVar("samStackName"), // TODO: REMOVE THE NEED FOR THIS
3844
logRetentionInDays: getNumberConfigFromEnvVar("logRetentionInDays"),
3945
logLevel: getConfigFromEnvVar("logLevel"),
@@ -55,7 +61,7 @@ async function main() {
5561
// creating a new stack per version.
5662
new PsuApiStatefulStack(app, "PsuApiStatefulStack", {
5763
...props,
58-
stackName: getConfigFromEnvVar("stackName"),
64+
stackName: modeAwareStackName,
5965
logRetentionInDays: getNumberConfigFromEnvVar("logRetentionInDays"),
6066
environment: getConfigFromEnvVar("environment"),
6167
enableDynamoDBAutoScaling: getBooleanConfigFromEnvVar("enableDynamoDBAutoScaling", undefined, "false"),

0 commit comments

Comments
 (0)