Python 无法为 CDK V2 中的子包添加依赖项
Cannot add dependencies for sub packages in CDK V2 in Python
CDK v1 到 v2 migration guide 建议添加如下要求:
aws-cdk-lib>=2.0.0
constructs>=10.0.0
aws-cdk.aws-codestar-alpha>=2.0.0alpha1
...
我想像在 v1 中那样一个一个地添加 CDK 包的依赖项:aws-cdk.aws-lambda
、aws-cdk.aws-apigateway
等等。
但是我发现在 CDK v2 中没有办法做到这一点。 aws-cdk-lib.{service-name}
不行。
这会导致依赖层文件非常大,超过 Lambda 中 256MB 的依赖层大小限制。所以升级到 v2 后我无法更新我的堆栈。
有没有办法排除由 aws-cdk-lib 创建的未使用的依赖项?
CDK v2 的重点是将所有模块打包在一起以避免不匹配的依赖项。每个 CDK v2 版本包含所有模块,不包括实验性模块,仍以 alpha
后缀单独发布。
所以不,你不能从 CDKv2 中排除任何模块,这是设计使然。
来自docs:
AWS CDK v2 consolidates the stable parts of the AWS Construct Library, including the core library, into a single package, aws-cdk-lib. Developers no longer need to install additional packages for the individual AWS services they use. This single-package approach also eliminates the need to synchronize the versions of the various CDK library packages.
CDK v1 到 v2 migration guide 建议添加如下要求:
aws-cdk-lib>=2.0.0
constructs>=10.0.0
aws-cdk.aws-codestar-alpha>=2.0.0alpha1
...
我想像在 v1 中那样一个一个地添加 CDK 包的依赖项:aws-cdk.aws-lambda
、aws-cdk.aws-apigateway
等等。
但是我发现在 CDK v2 中没有办法做到这一点。 aws-cdk-lib.{service-name}
不行。
这会导致依赖层文件非常大,超过 Lambda 中 256MB 的依赖层大小限制。所以升级到 v2 后我无法更新我的堆栈。
有没有办法排除由 aws-cdk-lib 创建的未使用的依赖项?
CDK v2 的重点是将所有模块打包在一起以避免不匹配的依赖项。每个 CDK v2 版本包含所有模块,不包括实验性模块,仍以 alpha
后缀单独发布。
所以不,你不能从 CDKv2 中排除任何模块,这是设计使然。
来自docs:
AWS CDK v2 consolidates the stable parts of the AWS Construct Library, including the core library, into a single package, aws-cdk-lib. Developers no longer need to install additional packages for the individual AWS services they use. This single-package approach also eliminates the need to synchronize the versions of the various CDK library packages.