小编Mit*_*aff的帖子

避免 cdk 引导程序中的竞争条件 - 测试和部署管道的并发运行

我有一个生产升级测试管道,在每个 PR 上运行,它将部署生产副本到测试帐户,然后使用功能分支上的内容进行升级。这样做是为了确保生产升级始终成功。步骤是:

\n
    \n
  1. 引导并将主分支部署到预生产 AWS 帐户
  2. \n
\n
    \n
  • git checkout master
  • \n
  • cdk bootstrap --force aws://unknown-account/ap-southeast-2
  • \n
  • cdk deploy --all --require-approval never --change-set-name "ci-${GITHUB_RUN_ID}"
  • \n
\n
    \n
  1. 引导并将功能分支部署到同一帐户
  2. \n
\n
    \n
  • git checkout feature
  • \n
  • cdk bootstrap aws://unknown-account/ap-southeast-2
  • \n
  • cdk deploy --all --require-approval never --change-set-name "ci-${GITHUB_RUN_ID}"
  • \n
\n

昨天,我们在将 aws-cdk 升级到 1.108.0 时遇到了问题。上述第二步部署失败,但该步骤仍成功将 AWS 账户引导至版本 6。(5 -> 6)

\n

当第二次重新运行作业时,我们在管道中运行第一步时收到如下问题:

\n
 \xe2\x9d\x8c   Environment aws://unknown-account/ap-southeast-2 failed bootstrapping: Error: Not downgrading existing bootstrap stack from version \'6\' to version …
Run Code Online (Sandbox Code Playgroud)

aws-cdk

7
推荐指数
1
解决办法
1570
查看次数

标签 统计

aws-cdk ×1