Skip to content

Commit bd610d0

Browse files
committed
refactor: centralise constants
1 parent e26e480 commit bd610d0

3 files changed

Lines changed: 36 additions & 15 deletions

File tree

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
import {Fn} from "aws-cdk-lib"
2+
3+
export const ACCOUNT_RESOURCES = {
4+
CloudwatchEncryptionKMSPolicyArn: Fn.importValue("account-resources:CloudwatchEncryptionKMSPolicyArn"),
5+
CloudwatchLogsKmsKeyArn: Fn.importValue("account-resources:CloudwatchLogsKmsKeyArn"),
6+
EpsDomainName: Fn.importValue("eps-route53-resources:EPS-domain"),
7+
EpsZoneId: Fn.importValue("eps-route53-resources:EPS-ZoneID"),
8+
TrustStoreBucket: Fn.importValue("account-resources:TrustStoreBucket"),
9+
TrustStoreBucketKMSKey: Fn.importValue("account-resources:TrustStoreBucketKMSKey"),
10+
TrustStoreDeploymentBucket: Fn.importValue("account-resources:TrustStoreDeploymentBucket")
11+
}
12+
export const LAMBDA_RESOURCES = {
13+
LambdaInsightsLogGroupPolicy: Fn.importValue("lambda-resources:LambdaInsightsLogGroupPolicy"),
14+
SplunkDeliveryStream: Fn.importValue("lambda-resources:SplunkDeliveryStream"),
15+
SplunkSubscriptionFilterRole: Fn.importValue("lambda-resources:SplunkSubscriptionFilterRole")
16+
}

packages/cdkConstructs/src/constructs/RestApiGateway.ts

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import {Fn, RemovalPolicy} from "aws-cdk-lib"
1+
import {RemovalPolicy} from "aws-cdk-lib"
22
import {
33
CfnStage,
44
EndpointType,
@@ -27,6 +27,7 @@ import {BucketDeployment, Source} from "aws-cdk-lib/aws-s3-deployment"
2727
import {ARecord, HostedZone, RecordTarget} from "aws-cdk-lib/aws-route53"
2828
import {ApiGateway as ApiGatewayTarget} from "aws-cdk-lib/aws-route53-targets"
2929
import {NagSuppressions} from "cdk-nag"
30+
import {ACCOUNT_RESOURCES, LAMBDA_RESOURCES} from "../constants"
3031

3132
export interface RestApiGatewayProps {
3233
/** Stack name, used as prefix for resource naming and DNS records. */
@@ -72,26 +73,26 @@ export class RestApiGateway extends Construct {
7273

7374
// Imports
7475
const cloudWatchLogsKmsKey = Key.fromKeyArn(
75-
this, "cloudWatchLogsKmsKey", Fn.importValue("account-resources:CloudwatchLogsKmsKeyArn"))
76+
this, "cloudWatchLogsKmsKey", ACCOUNT_RESOURCES.CloudwatchLogsKmsKeyArn)
7677

7778
const splunkDeliveryStream = Stream.fromStreamArn(
78-
this, "SplunkDeliveryStream", Fn.importValue("lambda-resources:SplunkDeliveryStream"))
79+
this, "SplunkDeliveryStream", LAMBDA_RESOURCES.SplunkDeliveryStream)
7980

8081
const splunkSubscriptionFilterRole = Role.fromRoleArn(
81-
this, "splunkSubscriptionFilterRole", Fn.importValue("lambda-resources:SplunkSubscriptionFilterRole"))
82+
this, "splunkSubscriptionFilterRole", LAMBDA_RESOURCES.SplunkSubscriptionFilterRole)
8283

8384
const trustStoreBucket = Bucket.fromBucketArn(
84-
this, "TrustStoreBucket", Fn.importValue("account-resources:TrustStoreBucket"))
85+
this, "TrustStoreBucket", ACCOUNT_RESOURCES.TrustStoreBucket)
8586

8687
const trustStoreDeploymentBucket = Bucket.fromBucketArn(
87-
this, "TrustStoreDeploymentBucket", Fn.importValue("account-resources:TrustStoreDeploymentBucket"))
88+
this, "TrustStoreDeploymentBucket", ACCOUNT_RESOURCES.TrustStoreDeploymentBucket)
8889

8990
const trustStoreBucketKmsKey = Key.fromKeyArn(
90-
this, "TrustStoreBucketKmsKey", Fn.importValue("account-resources:TrustStoreBucketKMSKey"))
91+
this, "TrustStoreBucketKmsKey", ACCOUNT_RESOURCES.TrustStoreBucketKMSKey)
9192

92-
const epsDomainName: string = Fn.importValue("eps-route53-resources:EPS-domain")
93+
const epsDomainName: string = ACCOUNT_RESOURCES.EpsDomainName
9394
const hostedZone = HostedZone.fromHostedZoneAttributes(this, "HostedZone", {
94-
hostedZoneId: Fn.importValue("eps-route53-resources:EPS-ZoneID"),
95+
hostedZoneId: ACCOUNT_RESOURCES.EpsZoneId,
9596
zoneName: epsDomainName
9697
})
9798
const serviceDomainName = `${props.stackName}.${epsDomainName}`

packages/cdkConstructs/src/constructs/lambdaSharedResources.ts

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import {Construct} from "constructs"
2-
import {Fn, RemovalPolicy} from "aws-cdk-lib"
2+
import {RemovalPolicy} from "aws-cdk-lib"
33
import {Architecture, ILayerVersion, LayerVersion} from "aws-cdk-lib/aws-lambda"
44
import {IKey, Key} from "aws-cdk-lib/aws-kms"
55
import {CfnLogGroup, CfnSubscriptionFilter, LogGroup} from "aws-cdk-lib/aws-logs"
@@ -13,6 +13,7 @@ import {
1313
} from "aws-cdk-lib/aws-iam"
1414
import {NagSuppressions} from "cdk-nag"
1515
import {LAMBDA_INSIGHTS_LAYER_ARNS} from "../config"
16+
import {ACCOUNT_RESOURCES, LAMBDA_RESOURCES} from "../constants"
1617
import {addSuppressions} from "../utils/helpers"
1718
import {CfnDeliveryStream} from "aws-cdk-lib/aws-kinesisfirehose"
1819
import {Stream} from "aws-cdk-lib/aws-kinesis"
@@ -46,14 +47,17 @@ export const createSharedLambdaResources = (
4647
additionalPolicies,
4748
architecture,
4849
cloudWatchLogsKmsKey = Key.fromKeyArn(
49-
scope, "cloudWatchLogsKmsKey", Fn.importValue("account-resources:CloudwatchLogsKmsKeyArn")),
50+
scope, "cloudWatchLogsKmsKey", ACCOUNT_RESOURCES.CloudwatchLogsKmsKeyArn),
5051
cloudwatchEncryptionKMSPolicy = ManagedPolicy.fromManagedPolicyArn(
51-
scope, "cloudwatchEncryptionKMSPolicyArn", Fn.importValue("account-resources:CloudwatchEncryptionKMSPolicyArn")),
52+
scope,
53+
"cloudwatchEncryptionKMSPolicyArn",
54+
ACCOUNT_RESOURCES.CloudwatchEncryptionKMSPolicyArn
55+
),
5256
splunkDeliveryStream,
5357
splunkSubscriptionFilterRole = Role.fromRoleArn(
54-
scope, "splunkSubscriptionFilterRole", Fn.importValue("lambda-resources:SplunkSubscriptionFilterRole")),
58+
scope, "splunkSubscriptionFilterRole", LAMBDA_RESOURCES.SplunkSubscriptionFilterRole),
5559
lambdaInsightsLogGroupPolicy = ManagedPolicy.fromManagedPolicyArn(
56-
scope, "lambdaInsightsLogGroupPolicy", Fn.importValue("lambda-resources:LambdaInsightsLogGroupPolicy")),
60+
scope, "lambdaInsightsLogGroupPolicy", LAMBDA_RESOURCES.LambdaInsightsLogGroupPolicy),
5761
addSplunkSubscriptionFilter = true
5862
} = props
5963
const insightsLambdaLayerArn = architecture === Architecture.ARM_64
@@ -84,7 +88,7 @@ export const createSharedLambdaResources = (
8488
})
8589
} else {
8690
const splunkDeliveryStreamImport = Stream.fromStreamArn(
87-
scope, "SplunkDeliveryStream", Fn.importValue("lambda-resources:SplunkDeliveryStream"))
91+
scope, "SplunkDeliveryStream", LAMBDA_RESOURCES.SplunkDeliveryStream)
8892
new CfnSubscriptionFilter(scope, "LambdaLogsSplunkSubscriptionFilter", {
8993
destinationArn: splunkDeliveryStreamImport.streamArn,
9094
filterPattern: "",

0 commit comments

Comments
 (0)