Skip to content

Commit c185194

Browse files
authored
feat(kinesisanalytics-flink): add support for Flink 1.19 (#30723)
### Reason for this change Amazon Kinesis Data Analytics now supports Apache Flink v1.18 ([LINK](https://aws.amazon.com/about-aws/whats-new/2024/06/amazon-managed-service-apache-flink-1-19/)) This is also supported in Cloudformation ([LINK](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-application.html#aws-resource-kinesisanalyticsv2-application-properties)) ### Description of changes - Added Flink 1.19 to `Runtime` type - Updated Readme to reference Flink 1.19 ### Checklist - [x] My code adheres to the [CONTRIBUTING GUIDE](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and [DESIGN GUIDELINES](https://github.com/aws/aws-cdk/blob/main/docs/DESIGN_GUIDELINES.md) ---- *By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
1 parent ad3a25d commit c185194

18 files changed

+28
-25
lines changed

Diff for: packages/@aws-cdk/aws-kinesisanalytics-flink-alpha/README.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Kinesis Analytics Flink
1+
# Kinesis Analytics Flink
22
<!--BEGIN STABILITY BANNER-->
33

44
---
@@ -46,7 +46,7 @@ const flinkApp = new flink.Application(this, 'Application', {
4646
},
4747
},
4848
// ...
49-
runtime: flink.Runtime.FLINK_1_18,
49+
runtime: flink.Runtime.FLINK_1_19,
5050
code: flink.ApplicationCode.fromBucket(bucket, 'my-app.jar'),
5151
});
5252
```
@@ -59,7 +59,7 @@ snapshotting, monitoring, and parallelism.
5959
declare const bucket: s3.Bucket;
6060
const flinkApp = new flink.Application(this, 'Application', {
6161
code: flink.ApplicationCode.fromBucket(bucket, 'my-app.jar'),
62-
runtime: flink.Runtime.FLINK_1_18,
62+
runtime: flink.Runtime.FLINK_1_19,
6363
checkpointingEnabled: true, // default is true
6464
checkpointInterval: Duration.seconds(30), // default is 1 minute
6565
minPauseBetweenCheckpoints: Duration.seconds(10), // default is 5 seconds
@@ -80,7 +80,7 @@ declare const bucket: s3.Bucket;
8080
declare const vpc: ec2.Vpc;
8181
const flinkApp = new flink.Application(this, 'Application', {
8282
code: flink.ApplicationCode.fromBucket(bucket, 'my-app.jar'),
83-
runtime: flink.Runtime.FLINK_1_18,
83+
runtime: flink.Runtime.FLINK_1_19,
8484
vpc,
8585
});
8686
```

Diff for: packages/@aws-cdk/aws-kinesisanalytics-flink-alpha/lib/types.ts

+3
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,9 @@ export class Runtime {
6969
/** Flink Version 1.18 */
7070
public static readonly FLINK_1_18 = Runtime.of('FLINK-1_18');
7171

72+
/** Flink Version 1.19 */
73+
public static readonly FLINK_1_19 = Runtime.of('FLINK-1_19');
74+
7275
/** Create a new Runtime with with an arbitrary Flink version string */
7376
public static of(value: string) {
7477
return new Runtime(value);

Diff for: packages/@aws-cdk/aws-kinesisanalytics-flink-alpha/test/application.test.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -21,21 +21,21 @@ describe('Application', () => {
2121
stack = new core.Stack();
2222
bucket = new s3.Bucket(stack, 'CodeBucket');
2323
requiredProps = {
24-
runtime: flink.Runtime.FLINK_1_11,
24+
runtime: flink.Runtime.FLINK_1_19,
2525
code: flink.ApplicationCode.fromBucket(bucket, 'my-app.jar'),
2626
};
2727
});
2828

2929
test('default Flink Application', () => {
3030
new flink.Application(stack, 'FlinkApplication', {
31-
runtime: flink.Runtime.FLINK_1_11,
31+
runtime: flink.Runtime.FLINK_1_19,
3232
code: flink.ApplicationCode.fromBucket(bucket, 'my-app.jar'),
3333
applicationName: 'MyFlinkApplication',
3434
});
3535

3636
Template.fromStack(stack).hasResourceProperties('AWS::KinesisAnalyticsV2::Application', {
3737
ApplicationName: 'MyFlinkApplication',
38-
RuntimeEnvironment: 'FLINK-1_11',
38+
RuntimeEnvironment: 'FLINK-1_19',
3939
ServiceExecutionRole: {
4040
'Fn::GetAtt': [
4141
'FlinkApplicationRole2F7BCBF6',

Diff for: packages/@aws-cdk/aws-kinesisanalytics-flink-alpha/test/integ.application-code-from-bucket.lit.js.snapshot/FlinkAppCodeFromBucketTest.assets.json

+2-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: packages/@aws-cdk/aws-kinesisanalytics-flink-alpha/test/integ.application-code-from-bucket.lit.js.snapshot/FlinkAppCodeFromBucketTest.template.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,7 @@
175175
"SnapshotsEnabled": true
176176
}
177177
},
178-
"RuntimeEnvironment": "FLINK-1_18",
178+
"RuntimeEnvironment": "FLINK-1_19",
179179
"ServiceExecutionRole": {
180180
"Fn::GetAtt": [
181181
"AppRole1AF9B530",

Diff for: packages/@aws-cdk/aws-kinesisanalytics-flink-alpha/test/integ.application-code-from-bucket.lit.js.snapshot/manifest.json

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: packages/@aws-cdk/aws-kinesisanalytics-flink-alpha/test/integ.application-code-from-bucket.lit.js.snapshot/tree.json

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: packages/@aws-cdk/aws-kinesisanalytics-flink-alpha/test/integ.application-code-from-bucket.lit.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ const fileKey = asset.s3ObjectKey;
1515
///! show
1616
new flink.Application(stack, 'App', {
1717
code: flink.ApplicationCode.fromBucket(bucket, fileKey),
18-
runtime: flink.Runtime.FLINK_1_18,
18+
runtime: flink.Runtime.FLINK_1_19,
1919
});
2020
///! hide
2121

Diff for: packages/@aws-cdk/aws-kinesisanalytics-flink-alpha/test/integ.application.lit.js.snapshot/FlinkAppTest.assets.json

+2-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: packages/@aws-cdk/aws-kinesisanalytics-flink-alpha/test/integ.application.lit.js.snapshot/FlinkAppTest.template.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,7 @@
175175
"SnapshotsEnabled": true
176176
}
177177
},
178-
"RuntimeEnvironment": "FLINK-1_18",
178+
"RuntimeEnvironment": "FLINK-1_19",
179179
"ServiceExecutionRole": {
180180
"Fn::GetAtt": [
181181
"AppRole1AF9B530",

Diff for: packages/@aws-cdk/aws-kinesisanalytics-flink-alpha/test/integ.application.lit.js.snapshot/manifest.json

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: packages/@aws-cdk/aws-kinesisanalytics-flink-alpha/test/integ.application.lit.js.snapshot/tree.json

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: packages/@aws-cdk/aws-kinesisanalytics-flink-alpha/test/integ.application.lit.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ const stack = new core.Stack(app, 'FlinkAppTest');
99

1010
const flinkApp = new flink.Application(stack, 'App', {
1111
code: flink.ApplicationCode.fromAsset(path.join(__dirname, 'code-asset')),
12-
runtime: flink.Runtime.FLINK_1_18,
12+
runtime: flink.Runtime.FLINK_1_19,
1313
});
1414

1515
new cloudwatch.Alarm(stack, 'Alarm', {

Diff for: packages/@aws-cdk/aws-kinesisanalytics-flink-alpha/test/integ.vpc-application.js.snapshot/FlinkAppTest.assets.json

+2-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: packages/@aws-cdk/aws-kinesisanalytics-flink-alpha/test/integ.vpc-application.js.snapshot/FlinkAppTest.template.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -612,7 +612,7 @@
612612
}
613613
]
614614
},
615-
"RuntimeEnvironment": "FLINK-1_18",
615+
"RuntimeEnvironment": "FLINK-1_19",
616616
"ServiceExecutionRole": {
617617
"Fn::GetAtt": [
618618
"AppRole1AF9B530",

Diff for: packages/@aws-cdk/aws-kinesisanalytics-flink-alpha/test/integ.vpc-application.js.snapshot/manifest.json

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: packages/@aws-cdk/aws-kinesisanalytics-flink-alpha/test/integ.vpc-application.js.snapshot/tree.json

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: packages/@aws-cdk/aws-kinesisanalytics-flink-alpha/test/integ.vpc-application.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ const vpc = new ec2.Vpc(stack, 'VPC', { restrictDefaultSecurityGroup: false });
1010

1111
new flink.Application(stack, 'App', {
1212
code: flink.ApplicationCode.fromAsset(path.join(__dirname, 'code-asset')),
13-
runtime: flink.Runtime.FLINK_1_18,
13+
runtime: flink.Runtime.FLINK_1_19,
1414
vpc,
1515
});
1616

0 commit comments

Comments
 (0)