首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AWS管道触发本地终端的部署。

AWS管道触发本地终端的部署。
EN

Stack Overflow用户
提问于 2022-05-17 11:40:46
回答 3查看 269关注 0票数 1

目前,我正在使用@aws-cdk/pipelines包为我的服务快速方便地设置CI/CD。

然而,在实验/开发阶段,我希望用业务逻辑组件手动调用堆栈的cdk deploy,这样部署循环就会快得多,因为我不需要管道自突变步骤,而且我也不想每次都把所有东西都推到存储库中。

不幸的是,我无法做到这一点。尝试在存储库根文件夹中手动调用npx cdk deploy命令之后,它只需部署包含管道资源的堆栈。

我还试图通过直接调用堆栈名来实现这一点:

代码语言:javascript
复制
npx cdk deploy -c config=dev <full-stack-name>

它在No stacks match the name(s) [...]消息中失败了。

这个是可能的吗?我认为这是非常重要的用例,因为通过适当的CI/CD管道部署至少需要2-3分钟,这破坏了我的注意力。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2022-05-17 12:56:23

创建一个新的普通香草应用程序来处理独立的、非管道部署场景:

代码语言:javascript
复制
// bin/dev-app.ts
const app = new cdk.App();
new MyBusinessLogicStack(app, 'DevStack', props)

告诉CLI使用显式dev-app部署app命令

代码语言:javascript
复制
cdk deploy --app 'npx ts-node bin/dev-app.ts'

现在您有两个“应用程序”:一个部署管道,另一个部署独立的“业务逻辑堆栈”。

票数 1
EN

Stack Overflow用户

发布于 2022-05-17 15:45:49

作为创建单独应用程序的替代方案,您还可以直接部署堆栈。若要获取堆栈名称,请使用cdk ls。这将是<Pipeline Name>/<Stage Name>/<Stack name>

此外,您还可以用以下方法手动部署整个阶段

代码语言:javascript
复制
cdk deploy "<Pipeline Name>/<Stage Name>"
票数 1
EN

Stack Overflow用户

发布于 2022-05-31 17:47:21

如果您使用Codestar作为管道的源,则可以将其指向您选择的回购中的特定分支。然后将您的代码提交到所述分支,这将触发您的管道。

不过,我推荐其他答案,并将管道堆栈和应用程序堆栈分开--如果您想要的话,可以使用cdk管道自动更新堆栈(自突变),但是对于快速开发来说,将应用程序作为自己的堆栈是最好的。-不仅安全,你现在可以使用cdk手表让它自动部署更改,完全跳过管道。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72273408

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档