aws cdk 使用非默认配置文件

bea*_*der 9 aws-cdk

我不想使用默认的 aws 配置文件和帐户进行 cdk 开发

cdkprof所以我使用创建了一个新帐户和一个新配置文件aws configure --profile cdkprof

我已在~/.aws/credentials~/.aws/config文件中验证了新配置文件创建正确。运行export AWS_PROFILE=cdkprof && aws configure list && aws sts get-caller-identity正确返回我的个人资料详细信息。

我也导出过

  • CDK_DEFAULT_REGION,
  • CDK_DEFAULT_ACCOUNT,
  • AWS_DEFAULT_REGION,
  • AWS_配置文件,
  • AWS_SECRET_ACCESS_KEY 和
  • AWS_ACCESS_KEY_ID

这些可以作为 bash 中的环境变量使用。

但是,当我尝试运行时:

$ npx cdk bootstrap --profile cdkprof   
Run Code Online (Sandbox Code Playgroud)

我收到错误

Unable to resolve AWS account to use. It must be either configured when you define your CDK or through the environment
Run Code Online (Sandbox Code Playgroud)

如何通过 cdk 命令使用我的新个人资料和帐户?

谢谢。

小智 24

默认情况下,CDK 命令将使用默认的 AWS CLI 配置文件。但是,您可以通过将项目添加到处理 CDK 命令的文件来指定项目的命名配置文件。对于 TypeScript 项目,这是在cdk.json项目根目录中完成的:

{
  "app": "npx ts-node --prefer-ts-exts bin/project.ts",
  "profile": "cdkprof",
  "context": {
    ...
  }
}
Run Code Online (Sandbox Code Playgroud)

然后,当您运行诸如 之类的命令时,将使用您的命名配置文件cdk bootstrap

  • 仍然不知道为什么 cli 没有获取我的个人资料,我不想对个人资料进行硬编码,因为我想共享此代码。但就目前而言,这种方法足以让我开始。谢谢。 (6认同)