【问题标题】:What should be the Jenkins pipeline strategy for deploying multiple cloudformation stacks in a repository via Jenkins?通过 Jenkins 在存储库中部署多个 cloudformation 堆栈的 Jenkins 管道策略应该是什么?
【发布时间】:2019-11-29 04:51:51
【问题描述】:

我有一个包含多个文件夹的 Git 存储库。每个文件夹都有多个 cloudformation 堆栈。我想在整个存储库上执行 CI/CD,以便只构建那些对其进行了提交的堆栈。我的管道和分支策略应该是什么?我可以为每个堆栈设置一个管道作业吗?如何在包含多个堆栈的分支上仅构建基于提交的特定堆栈?

【问题讨论】:

    标签: git amazon-web-services jenkins jenkins-pipeline amazon-cloudformation


    【解决方案1】:

    有很多不同的方法可以做到这一点;不幸的答案是“做对你有用的事”;特别是关于您的管道和分支策略。

    您可以为每个堆栈创建一个管道,也可以一个管道来部署所有内容。如果您使用一个管道来部署所有内容,CloudFormation 的一个重要部分是,如果模板没有更改,CloudFormation 将不会做任何事情。因此,如果提交仅更新您正在部署的 X 中的一个堆栈,则只有一个堆栈应在 AWS 中更新,因为您提交的更新模板与它们在 AWS 中的存在方式之间会有一些比较,并决定是否或不根据任何差异进行更新。

    【讨论】:

    • 假设在一个分支中有多个栈,每个栈都有自己的Jenkins作业。当在堆栈上触发提交时,我只希望构建该特定堆栈而不是所有其他 cf 模板。这如何实现?
    猜你喜欢
    • 2021-09-06
    • 2013-04-15
    • 1970-01-01
    • 2022-11-05
    • 2020-11-29
    • 2018-11-23
    • 2021-10-12
    • 1970-01-01
    • 2013-11-23
    相关资源
    最近更新 更多