我正在尝试使用AWS
将一个简单的堆栈部署到CDK
。不幸的是,尽管当我通过GitHub动作工作流运行它时,它似乎部署到了错误的区域,但是我无法弄清楚为什么...
我的bin\cdk.js
的内容看起来像(示例帐户):
#!/usr/bin/env node
const cdk = require("@aws-cdk/core");
const { CdkStack } = require("../lib/cdk-stack");
const app = new cdk.App();
new CdkStack(app, "CdkStack", { account: "000000000001", region: "eu-west-1" });
根据文档,这对我看来是正确的。据我所知,我在其他任何地方都没有定义任何东西。如果运行cdk bootstrap
,将生成CloudFormation。对该区域的唯一引用是:
"environment": "aws://unknown-account/unknown-region",
我在这里错过了完全显而易见的东西吗?我在管道中对其进行配置的方式只是使用:
- name: CDK Deploy
env:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID}}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY}}
run: |
npm install -g aws-cdk
cdk bootstrap
cdk deploy --require-approval never
答案 0 :(得分:3)
您可以在管道配置中将默认区域设置为环境变量:
- name: CDK Deploy
env:
AWS_DEFAULT_REGION: eu-west-1
...
run: |
npm install -g aws-cdk
cdk bootstrap
cdk deploy --require-approval never