Skip to content

Commit 0b279f8

Browse files
committed
refactor integ tests
1 parent e739a67 commit 0b279f8

6 files changed

Lines changed: 88 additions & 75 deletions

File tree

integration-tests/lib/stacks/base.ts

Lines changed: 20 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,14 @@ import {
66
defaultDatadogEnvVariables,
77
defaultDatadogSecretPolicy,
88
getExtensionLayer,
9-
getNode20Layer,
10-
getPython313Layer,
11-
getJava21Layer,
12-
getDotnet8Layer
9+
getDefaultNodeLayer,
10+
getDefaultPythonLayer,
11+
getDefaultJavaLayer,
12+
getDefaultDotnetLayer,
13+
defaultNodeRuntime,
14+
defaultPythonRuntime,
15+
defaultJavaRuntime,
16+
defaultDotnetRuntime
1317
} from '../util';
1418

1519
export class Base extends cdk.Stack {
@@ -18,15 +22,15 @@ export class Base extends cdk.Stack {
1822

1923
// Get layers once for the entire stack
2024
const extensionLayer = getExtensionLayer(this);
21-
const node20Layer = getNode20Layer(this);
22-
const python313Layer = getPython313Layer(this);
23-
const java21Layer = getJava21Layer(this);
24-
const dotnet8Layer = getDotnet8Layer(this);
25+
const nodeLayer = getDefaultNodeLayer(this);
26+
const pythonLayer = getDefaultPythonLayer(this);
27+
const javaLayer = getDefaultJavaLayer(this);
28+
const dotnetLayer = getDefaultDotnetLayer(this);
2529

2630
// Node.js Lambda
2731
const nodeFunctionName = `${id}-node-lambda`;
2832
const nodeFunction = new lambda.Function(this, nodeFunctionName, {
29-
runtime: lambda.Runtime.NODEJS_20_X,
33+
runtime: defaultNodeRuntime,
3034
architecture: lambda.Architecture.ARM_64,
3135
handler: '/opt/nodejs/node_modules/datadog-lambda-js/handler.handler',
3236
code: lambda.Code.fromAsset('./lambda/base-node'),
@@ -43,12 +47,12 @@ export class Base extends cdk.Stack {
4347
});
4448
nodeFunction.addToRolePolicy(defaultDatadogSecretPolicy);
4549
nodeFunction.addLayers(extensionLayer);
46-
nodeFunction.addLayers(node20Layer);
50+
nodeFunction.addLayers(nodeLayer);
4751

4852
// Python Lambda
4953
const pythonFunctionName = `${id}-python-lambda`;
5054
const pythonFunction = new lambda.Function(this, pythonFunctionName, {
51-
runtime: lambda.Runtime.PYTHON_3_13,
55+
runtime: defaultPythonRuntime,
5256
architecture: lambda.Architecture.ARM_64,
5357
handler: 'datadog_lambda.handler.handler',
5458
code: lambda.Code.fromAsset('./lambda/base-python'),
@@ -68,12 +72,12 @@ export class Base extends cdk.Stack {
6872
});
6973
pythonFunction.addToRolePolicy(defaultDatadogSecretPolicy);
7074
pythonFunction.addLayers(extensionLayer);
71-
pythonFunction.addLayers(python313Layer);
75+
pythonFunction.addLayers(pythonLayer);
7276

7377
// Java Lambda
7478
const javaFunctionName = `${id}-java-lambda`;
7579
const javaFunction = new lambda.Function(this, javaFunctionName, {
76-
runtime: lambda.Runtime.JAVA_21,
80+
runtime: defaultJavaRuntime,
7781
architecture: lambda.Architecture.ARM_64,
7882
handler: 'example.Handler::handleRequest',
7983
code: lambda.Code.fromAsset('./lambda/base-java/target/function.jar'),
@@ -90,12 +94,12 @@ export class Base extends cdk.Stack {
9094
});
9195
javaFunction.addToRolePolicy(defaultDatadogSecretPolicy);
9296
javaFunction.addLayers(extensionLayer);
93-
javaFunction.addLayers(java21Layer);
97+
javaFunction.addLayers(javaLayer);
9498

9599
// .NET Lambda
96100
const dotnetFunctionName = `${id}-dotnet-lambda`;
97101
const dotnetFunction = new lambda.Function(this, dotnetFunctionName, {
98-
runtime: lambda.Runtime.DOTNET_8,
102+
runtime: defaultDotnetRuntime,
99103
architecture: lambda.Architecture.ARM_64,
100104
handler: 'Function::Function.Handler::FunctionHandler',
101105
code: lambda.Code.fromAsset('./lambda/base-dotnet/bin/function.zip'),
@@ -111,6 +115,6 @@ export class Base extends cdk.Stack {
111115
});
112116
dotnetFunction.addToRolePolicy(defaultDatadogSecretPolicy);
113117
dotnetFunction.addLayers(extensionLayer);
114-
dotnetFunction.addLayers(dotnet8Layer);
118+
dotnetFunction.addLayers(dotnetLayer);
115119
}
116120
}

integration-tests/lib/stacks/lmi.ts

Lines changed: 20 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -7,22 +7,29 @@ import {
77
defaultDatadogEnvVariables,
88
defaultDatadogSecretPolicy,
99
getExtensionLayer,
10-
getNode24Layer,
11-
getPython313Layer,
12-
getJava21Layer,
13-
getDotnet8Layer
10+
getDefaultNodeLayer,
11+
getDefaultPythonLayer,
12+
getDefaultJavaLayer,
13+
getDefaultDotnetLayer,
14+
defaultNodeRuntime,
15+
defaultPythonRuntime,
16+
defaultJavaRuntime,
17+
defaultDotnetRuntime
1418
} from '../util';
1519

1620
export class LambdaManagedInstancesStack extends cdk.Stack {
1721
constructor(scope: Construct, id: string, props: cdk.StackProps) {
1822
super(scope, id, props);
1923

2024
const extensionLayer = getExtensionLayer(this);
21-
const node24Layer = getNode24Layer(this);
25+
const nodeLayer = getDefaultNodeLayer(this);
26+
const pythonLayer = getDefaultPythonLayer(this);
27+
const javaLayer = getDefaultJavaLayer(this);
28+
const dotnetLayer = getDefaultDotnetLayer(this);
2229

2330
const nodeFunctionName = `${id}-node-lambda`;
2431
const nodeFunction = new lambda.Function(this, nodeFunctionName, {
25-
runtime: lambda.Runtime.NODEJS_24_X,
32+
runtime: defaultNodeRuntime,
2633
architecture: lambda.Architecture.ARM_64,
2734
handler: '/opt/nodejs/node_modules/datadog-lambda-js/handler.handler',
2835
code: lambda.Code.fromAsset('./lambda/lmi-node'),
@@ -40,15 +47,15 @@ export class LambdaManagedInstancesStack extends cdk.Stack {
4047
setCapacityProvider(nodeFunction);
4148
nodeFunction.addToRolePolicy(defaultDatadogSecretPolicy);
4249
nodeFunction.addLayers(extensionLayer);
43-
nodeFunction.addLayers(node24Layer);
50+
nodeFunction.addLayers(nodeLayer);
4451
const nodeAlias = new lambda.Alias(this, `${nodeFunctionName}-alias`, {
4552
aliasName: 'lmi',
4653
version: nodeFunction.currentVersion,
4754
});
4855

4956
const pythonFunctionName = `${id}-python-lambda`;
5057
const pythonFunction = new lambda.Function(this, pythonFunctionName, {
51-
runtime: lambda.Runtime.PYTHON_3_13,
58+
runtime: defaultPythonRuntime,
5259
architecture: lambda.Architecture.ARM_64,
5360
handler: 'datadog_lambda.handler.handler',
5461
code: lambda.Code.fromAsset('./lambda/lmi-python'),
@@ -67,15 +74,15 @@ export class LambdaManagedInstancesStack extends cdk.Stack {
6774
setCapacityProvider(pythonFunction);
6875
pythonFunction.addToRolePolicy(defaultDatadogSecretPolicy);
6976
pythonFunction.addLayers(extensionLayer);
70-
pythonFunction.addLayers(getPython313Layer(this));
77+
pythonFunction.addLayers(pythonLayer);
7178
const pythonAlias = new lambda.Alias(this, `${pythonFunctionName}-alias`, {
7279
aliasName: 'lmi',
7380
version: pythonFunction.currentVersion,
7481
});
7582

7683
const javaFunctionName = `${id}-java-lambda`;
7784
const javaFunction = new lambda.Function(this, javaFunctionName, {
78-
runtime: lambda.Runtime.JAVA_21,
85+
runtime: defaultJavaRuntime,
7986
architecture: lambda.Architecture.ARM_64,
8087
handler: 'example.Handler::handleRequest',
8188
code: lambda.Code.fromAsset('./lambda/lmi-java/target/function.jar'),
@@ -93,15 +100,15 @@ export class LambdaManagedInstancesStack extends cdk.Stack {
93100
setCapacityProvider(javaFunction);
94101
javaFunction.addToRolePolicy(defaultDatadogSecretPolicy);
95102
javaFunction.addLayers(extensionLayer);
96-
javaFunction.addLayers(getJava21Layer(this));
103+
javaFunction.addLayers(javaLayer);
97104
const javaAlias = new lambda.Alias(this, `${javaFunctionName}-alias`, {
98105
aliasName: 'lmi',
99106
version: javaFunction.currentVersion,
100107
});
101108

102109
const dotnetFunctionName = `${id}-dotnet-lambda`;
103110
const dotnetFunction = new lambda.Function(this, dotnetFunctionName, {
104-
runtime: lambda.Runtime.DOTNET_8,
111+
runtime: defaultDotnetRuntime,
105112
architecture: lambda.Architecture.ARM_64,
106113
handler: 'Function::Function.Handler::FunctionHandler',
107114
code: lambda.Code.fromAsset('./lambda/lmi-dotnet/bin/function.zip'),
@@ -119,7 +126,7 @@ export class LambdaManagedInstancesStack extends cdk.Stack {
119126
setCapacityProvider(dotnetFunction);
120127
dotnetFunction.addToRolePolicy(defaultDatadogSecretPolicy);
121128
dotnetFunction.addLayers(extensionLayer);
122-
dotnetFunction.addLayers(getDotnet8Layer(this));
129+
dotnetFunction.addLayers(dotnetLayer);
123130
const dotnetAlias = new lambda.Alias(this, `${dotnetFunctionName}-alias`, {
124131
aliasName: 'lmi',
125132
version: dotnetFunction.currentVersion,

integration-tests/lib/stacks/otlp.ts

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,11 @@ import {
55
createLogGroup,
66
defaultDatadogEnvVariables,
77
defaultDatadogSecretPolicy,
8-
getExtensionLayer
8+
getExtensionLayer,
9+
defaultNodeRuntime,
10+
defaultPythonRuntime,
11+
defaultJavaRuntime,
12+
defaultDotnetRuntime
913
} from '../util';
1014

1115
export class Otlp extends cdk.Stack {
@@ -16,7 +20,7 @@ export class Otlp extends cdk.Stack {
1620

1721
const nodeFunctionName = `${id}-node-lambda`;
1822
const nodeFunction = new lambda.Function(this, nodeFunctionName, {
19-
runtime: lambda.Runtime.NODEJS_20_X,
23+
runtime: defaultNodeRuntime,
2024
architecture: lambda.Architecture.ARM_64,
2125
handler: 'index.handler',
2226
code: lambda.Code.fromAsset('./lambda/otlp-node'),
@@ -38,7 +42,7 @@ export class Otlp extends cdk.Stack {
3842

3943
const validationFunctionName = `${id}-response-validation-lambda`;
4044
const validationFunction = new lambda.Function(this, validationFunctionName, {
41-
runtime: lambda.Runtime.NODEJS_20_X,
45+
runtime: defaultNodeRuntime,
4246
architecture: lambda.Architecture.ARM_64,
4347
handler: 'response-validation.handler',
4448
code: lambda.Code.fromAsset('./lambda/otlp-node'),
@@ -58,7 +62,7 @@ export class Otlp extends cdk.Stack {
5862

5963
const pythonFunctionName = `${id}-python-lambda`;
6064
const pythonFunction = new lambda.Function(this, pythonFunctionName, {
61-
runtime: lambda.Runtime.PYTHON_3_12,
65+
runtime: defaultPythonRuntime,
6266
architecture: lambda.Architecture.ARM_64,
6367
handler: 'lambda_function.handler',
6468
code: lambda.Code.fromAsset('./lambda/otlp-python/package'),
@@ -80,7 +84,7 @@ export class Otlp extends cdk.Stack {
8084

8185
const javaFunctionName = `${id}-java-lambda`;
8286
const javaFunction = new lambda.Function(this, javaFunctionName, {
83-
runtime: lambda.Runtime.JAVA_21,
87+
runtime: defaultJavaRuntime,
8488
architecture: lambda.Architecture.ARM_64,
8589
handler: 'example.Handler::handleRequest',
8690
code: lambda.Code.fromAsset('./lambda/otlp-java/target/function.jar'),
@@ -102,7 +106,7 @@ export class Otlp extends cdk.Stack {
102106

103107
const dotnetFunctionName = `${id}-dotnet-lambda`;
104108
const dotnetFunction = new lambda.Function(this, dotnetFunctionName, {
105-
runtime: lambda.Runtime.DOTNET_8,
109+
runtime: defaultDotnetRuntime,
106110
architecture: lambda.Architecture.ARM_64,
107111
handler: 'Function::Function.Handler::FunctionHandler',
108112
code: lambda.Code.fromAsset('./lambda/otlp-dotnet/bin/function.zip'),

integration-tests/lib/stacks/snapstart.ts

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -6,23 +6,26 @@ import {
66
defaultDatadogEnvVariables,
77
defaultDatadogSecretPolicy,
88
getExtensionLayer,
9-
getPython313Layer,
10-
getJava21Layer,
11-
getDotnet8Layer
9+
getDefaultPythonLayer,
10+
getDefaultJavaLayer,
11+
getDefaultDotnetLayer,
12+
defaultPythonRuntime,
13+
defaultJavaRuntime,
14+
defaultDotnetRuntime
1215
} from '../util';
1316

1417
export class Snapstart extends cdk.Stack {
1518
constructor(scope: Construct, id: string, props: cdk.StackProps) {
1619
super(scope, id, props);
1720

1821
const extensionLayer = getExtensionLayer(this);
19-
const python313Layer = getPython313Layer(this);
20-
const java21Layer = getJava21Layer(this);
21-
const dotnet8Layer = getDotnet8Layer(this);
22+
const pythonLayer = getDefaultPythonLayer(this);
23+
const javaLayer = getDefaultJavaLayer(this);
24+
const dotnetLayer = getDefaultDotnetLayer(this);
2225

2326
const javaFunctionName = `${id}-java-lambda`;
2427
const javaFunction = new lambda.Function(this, javaFunctionName, {
25-
runtime: lambda.Runtime.JAVA_21,
28+
runtime: defaultJavaRuntime,
2629
architecture: lambda.Architecture.ARM_64,
2730
handler: 'example.SnapstartHandler::handleRequest',
2831
code: lambda.Code.fromAsset('./lambda/snapstart-java/target/function.jar'),
@@ -40,7 +43,7 @@ export class Snapstart extends cdk.Stack {
4043
});
4144
javaFunction.addToRolePolicy(defaultDatadogSecretPolicy);
4245
javaFunction.addLayers(extensionLayer);
43-
javaFunction.addLayers(java21Layer);
46+
javaFunction.addLayers(javaLayer);
4447
const javaVersion = javaFunction.currentVersion;
4548
const javaAlias = new lambda.Alias(this, `${javaFunctionName}-snapstart-alias`, {
4649
aliasName: 'snapstart',
@@ -49,7 +52,7 @@ export class Snapstart extends cdk.Stack {
4952

5053
const pythonFunctionName = `${id}-python-lambda`;
5154
const pythonFunction = new lambda.Function(this, pythonFunctionName, {
52-
runtime: lambda.Runtime.PYTHON_3_13,
55+
runtime: defaultPythonRuntime,
5356
architecture: lambda.Architecture.ARM_64,
5457
handler: 'datadog_lambda.handler.handler',
5558
code: lambda.Code.fromAsset('./lambda/snapstart-python'),
@@ -70,7 +73,7 @@ export class Snapstart extends cdk.Stack {
7073
});
7174
pythonFunction.addToRolePolicy(defaultDatadogSecretPolicy);
7275
pythonFunction.addLayers(extensionLayer);
73-
pythonFunction.addLayers(python313Layer);
76+
pythonFunction.addLayers(pythonLayer);
7477
const pythonVersion = pythonFunction.currentVersion;
7578
const pythonAlias = new lambda.Alias(this, `${pythonFunctionName}-snapstart-alias`, {
7679
aliasName: 'snapstart',
@@ -79,7 +82,7 @@ export class Snapstart extends cdk.Stack {
7982

8083
const dotnetFunctionName = `${id}-dotnet-lambda`;
8184
const dotnetFunction = new lambda.Function(this, dotnetFunctionName, {
82-
runtime: lambda.Runtime.DOTNET_8,
85+
runtime: defaultDotnetRuntime,
8386
architecture: lambda.Architecture.ARM_64,
8487
handler: 'Function::Function.SnapstartHandler::FunctionHandler',
8588
code: lambda.Code.fromAsset('./lambda/snapstart-dotnet/bin/function.zip'),
@@ -96,7 +99,7 @@ export class Snapstart extends cdk.Stack {
9699
});
97100
dotnetFunction.addToRolePolicy(defaultDatadogSecretPolicy);
98101
dotnetFunction.addLayers(extensionLayer);
99-
dotnetFunction.addLayers(dotnet8Layer);
102+
dotnetFunction.addLayers(dotnetLayer);
100103
const dotnetVersion = dotnetFunction.currentVersion;
101104
const dotnetAlias = new lambda.Alias(this, `${dotnetFunctionName}-snapstart-alias`, {
102105
aliasName: 'snapstart',

0 commit comments

Comments
 (0)