Skip to content

aws-kinesisfirehose-alpha: Needs support for eu-central-2 #27518

@jstoneham

Description

@jstoneham

Describe the bug

Creating a DeliveryStream in eu-central-2 fails at synth time with Error: Mapping doesn't contain top-level key 'eu-central-2'.

Expected Behavior

Configured constructs in a stack set to deploy to eu-central-2 using aws-cdk-lib 2.99.0 and @aws-cdk/aws-kinesisfirehose-alpha 2.99.0-alpha. Expected a clean compile.

Current Behavior

Error: Mapping doesn't contain top-level key 'eu-central-2'
    at CfnMapping.findInMap (/workspace/jgstone/Temp/src/MyPackage/node_modules/aws-cdk-lib/core/lib/cfn-mapping.js:1:1419)
    at setConnections (/workspace/jgstone/Temp/src/MyPackage/node_modules/@aws-cdk/aws-kinesisfirehose-alpha/lib/delivery-stream.ts:407:32)
    at new DeliveryStreamBase (/workspace/jgstone/Temp/src/MyPackage/node_modules/@aws-cdk/aws-kinesisfirehose-alpha/lib/delivery-stream.ts:108:24)
    at new DeliveryStream (/workspace/jgstone/Temp/src/MyPackage/node_modules/@aws-cdk/aws-kinesisfirehose-alpha/lib/delivery-stream.ts:317:5)
    at /workspace/jgstone/Temp/src/MyPackage/lib/stacks/kinesis-receiver.ts:108:30
    at Array.map (<anonymous>)
    at new KinesisReceiverStack (/workspace/jgstone/Temp/src/MyPackage/lib/stacks/kinesis-receiver.ts:34:50)
    at StackGenerator.buildStacks (/workspace/jgstone/Temp/src/MyPackage/lib/stack-generator.ts:28:34)
    at /workspace/jgstone/Temp/src/MyPackage/lib/app.ts:22:25
    at /workspace/jgstone/Temp/src/MyPackage/lib/deployment-pipeline.ts:191:55

Reproduction Steps

Just take any normal code example of DeliveryStream like your unit tests and synth it in eu-central-2.

Possible Solution

aws-kinesisfirehose-alpha uses a mapping of CIDR blocks (https://github.com/aws/aws-cdk/blob/main/packages/aws-cdk-lib/region-info/build-tools/fact-tables.ts#L768) per region. This list is incomplete (it does not include eu-central-2), so using these constructs in this region is not functional. (It also is missing ap-south-2, eu-south-2, as well as any announced/upcoming build regions like Calgary).

Additional Information/Context

No response

CDK CLI Version

2.93.0

Framework Version

No response

Node.js Version

v18.18.0

OS

Amazon Linux 2

Language

TypeScript

Language Version

TypeScript (4.9.4)

Other information

Please add these regions, but I would also suggest we find a way to have these constructs work /without/ this configuration, to fill it in automatically at build time from some source, or to have regions included automatically closer to launch. The requirement to file an issue to get any region included here means the Firehose constructs will never work pre-region launch (which is a problem for Amazon builders), nor directly after region launch (which is a difficulty for all CDK users likely to extend their pipeline to all new regions).

Metadata

Metadata

Assignees

No one assigned

    Labels

    @aws-cdk/aws-kinesisfirehoseRelated to Amazon Kinesis Data FirehosebugThis issue is a bug.effort/smallSmall work item – less than a day of effortp2

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions