问题标签 [aws-cdk]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
79 浏览

aws-cdk - 如何将 api-gateway 的 LambdaRestApi 附加到 CloudFrontWebDistribution?

我在使用 aws-cdk 时遇到了一些问题。

我想将 LambdaRestApi 附加到 CloudFrontWebDistribution。

将 s3 存储桶附加到 CloudFrontWebDistribution 很容易,因为在 aws-cdk-examples 中有一些示例。

但是,我找不到 LambdaRestApi 的一些示例。

你能为此提供一些参考吗?

0 投票
1 回答
1047 浏览

typescript - 如何将cdk镜像资产部署到ecs集群

我正在尝试将使用 cdk 创建的 docker 映像部署到 ecs 集群(ec2 不是 fargate)。

我在打字稿中尝试了以下内容(当然有适当的导入)

但是,当我运行时cdk diff,出现以下错误

是否可以让 cdk 构建映像并部署到 ecs?

如果有怎么办?我在 google、aws-cdk github repo 或 aws-cdk 文档上都找不到任何示例。

非常感谢任何帮助!

0 投票
1 回答
3126 浏览

amazon-web-services - 通过 CDK 中的 ARN 将 eventSource 添加到 Lambda

我有一个从 Dynamodb 流中读取的 lambda 函数。我有从同一个 AWS 账户中的另一个堆栈导出的 Dynamodb 流 ARN。现在,在 Lambda 中添加 eventSource 时,它​​从 Table 构造中询问。

参考:https ://awslabs.github.io/aws-cdk/refs/_aws-cdk_aws-lambda-event-sources.html#dynamodb-streams

但我有流 ARN。有什么办法可以利用它来添加事件源。或者我必须导出表本身?

0 投票
3 回答
5277 浏览

amazon-web-services - 如何使用 aws cdk 将 Cognito UserPool 作为身份验证提供程序之一创建 Cognito IdentityPool?

我正在尝试使用 CognitoUserPool 作为一个身份验证提供程序创建一个 Cognito FederatedIdentityPool。创建 UserPool 很简单:

但是我不确定如何将其连接到身份池:

根据IdentityProvider API Documentation,它看起来有一个属性cognitoIdentityProviders,但是它接受一个cdk.Token/CognitoIdentityProviderProperty.

现在我尝试创建一个CognitoIdentityProviderProperty对象并传递它cognitoIdentityProviders: [{ clientId: userPoolClient.userPoolClientId }],但我得到以下异常:

我什至尝试从 AWS 控制台复制 id 并在此处对其进行硬编码,仍然是同样的错误。

  1. 有人可以帮我解释如何在CfnIdentityPool.
  2. 为什么会有UserPoolCfnUserPool?它们之间有什么区别,应该使用哪一个?
0 投票
2 回答
1581 浏览

amazon-cloudformation - 如何使用 aws cloudformation 或 aws cdk 设置 aws aurora mysql 表?

如何使用 aws cloudformation 或 aws cdk 设置 aws aurora mysql 表?

在我的设置中,我有一个使用 lambda 用于各种微服务的无服务器应用程序。数据库是一个无服务器的 aurora mysql 数据库。为了配置 aws 基础设施,我将使用 aws CDK。我喜欢使用一些迁移工具(如 liquibase 或 sequelize)来设置数据库。

目前我正在使用一个分离的 lambda 函数。lambda 函数执行 liquibase 以设置数据库更改。但是在使用 CDK 部署成功后,我必须单独执行该功能。

在执行 cloudformation 堆栈(cdk 堆栈)之后触发的执行将是最佳的?!我想通过代码管道避免 CI / CD 堆栈。

有没有人在提供时设置数据库的最佳实践?

0 投票
1 回答
1501 浏览

amazon-web-services - 使用 AWS-CDK 的跨堆栈 Lambda 和 API 网关权限

我有两个代码库。其中一个定义了一项服务(服务 A),其中包括一个查询 dynamoDB 表的 AWS lambda。

另一个,定义了一个需要调用多个服务 lambda 的聚合 API 网关。

API Gateway 使用跨堆栈引用导入服务 A 中定义的 lambda 并为其创建 Lambda 集成:

当 API 被调用时,它会失败,可能是因为 apigateway 服务没有被授予调用权限。

在 Service AI 的 aws-cdk 项目中添加以下内容:

当我尝试部署服务时,我收到此错误:

错误:不能在构造 ID 中使用标记:Invoke{"Service":["${Token[TOKEN.139]}"]}

0 投票
1 回答
723 浏览

aws-cdk - 如何导入角色以用于在 AWS CDK 中创建 CodeBuild 项目?

我想在 CDK 中导入一个角色以使用它来配置新的 CodeBuild 项目。

注意:为了安全起见,我更改了 Arn 中的 Account Ref。

这是创建代码构建项目的代码..

我跑..

没有错误

然后我跑

得到错误..

因此,如果我在 CDK 中“导入”角色并尝试将其绑定到新的 CodeBuild 项目,那么它会失败(cdk 合成器)

但是我允许 CDK 在构建新的 CodeBuild 项目时创建自己的角色,然后 cdk synth 工作并且可以部署堆栈但是 codebuild 项目失败。

如果我使用 CodeBuild 项目并手动将角色更改为我尝试导入的初始角色 - 那么一切正常并且可以构建将运行。

我需要能够创建 CodeBuild 项目通过 CDK 绑定到角色。

CDK 版本:0.28.0

感激地收到任何帮助。

0 投票
2 回答
1414 浏览

amazon-cloudformation - 将 CloudFormation 模板 (YAML) 转换为对流层代码

我有一个用 Yaml 编写的大型 CloudFormation 模板,我想开始使用 Troposphere。是否有任何简单的方法可以将 CF 模板转换为对流层代码?

我在这里注意到了这个脚本https://github.com/cloudtools/troposphere/blob/master/troposphere/template_generator.py 这创建了一个对流层 python 对象,但我不确定它是否可以输出它对流层代码。

0 投票
0 回答
274 浏览

java - 获取 CDK 中的参数值

我有以下 CDK 代码:

所以,上面的问题是,我有一个定义为 serviceContainerPort 的参数,它的类型是 CfnParameter。现在,我想在容器中使用这个参数引用。

withContainerPort() 接受 Number 类型,但我不知道如何从 serviceContainerPort 获取 Number 类型。

如果它接受一个字符串,它工作得很好。但在这种情况下,它不是。知道如何使它工作吗?

0 投票
1 回答
2122 浏览

amazon-web-services - aws-cdk s3:PutBucketPolicy 部署具有公共读取访问权限的存储桶时访问被拒绝

我正在尝试使用 cdk 使用 S3 存储桶设置静态网站。但是,当我部署堆栈时,我收到错误消息API: s3:PutBucketPolicy Access Denied。我使用的 CLI 用户具有管理员权限。

我试图手动创建一个配置了“静态网站托管”属性的存储桶,但是当我添加以下存储桶策略时Access denied,即使我是 root 用户,我也会收到错误消息。

类似于这里的东西。

我已取消选择建议的所有公共访问设置 - 但我仍然收到拒绝访问。

相信部署cdk代码时的问题可能和手动创建bucket时的问题有关,但是不知道怎么调试。