目前,我正在使用@aws-cdk/pipelines包为我的服务快速方便地设置CI/CD。
然而,在实验/开发阶段,我希望用业务逻辑组件手动调用堆栈的cdk deploy,这样部署循环就会快得多,因为我不需要管道自突变步骤,而且我也不想每次都把所有东西都推到存储库中。
不幸的是,我无法做到这一点。尝试在存储库根文件夹中手动调用npx cdk deploy命令之后,它只需部署包含管道资源的堆栈。
我还试图通过直接调用堆栈名来实现这一点:
npx cdk deploy -c config=dev <full-stack-name>它在No stacks match the name(s) [...]消息中失败了。
这个是可能的吗?我认为这是非常重要的用例,因为通过适当的CI/CD管道部署至少需要2-3分钟,这破坏了我的注意力。
发布于 2022-05-17 12:56:23
发布于 2022-05-17 15:45:49
作为创建单独应用程序的替代方案,您还可以直接部署堆栈。若要获取堆栈名称,请使用cdk ls。这将是<Pipeline Name>/<Stage Name>/<Stack name>。
此外,您还可以用以下方法手动部署整个阶段
cdk deploy "<Pipeline Name>/<Stage Name>"发布于 2022-05-31 17:47:21
如果您使用Codestar作为管道的源,则可以将其指向您选择的回购中的特定分支。然后将您的代码提交到所述分支,这将触发您的管道。
不过,我推荐其他答案,并将管道堆栈和应用程序堆栈分开--如果您想要的话,可以使用cdk管道自动更新堆栈(自突变),但是对于快速开发来说,将应用程序作为自己的堆栈是最好的。-不仅安全,你现在可以使用cdk手表让它自动部署更改,完全跳过管道。
https://stackoverflow.com/questions/72273408
复制相似问题