Jenkins + Ansible用于多级应用程序

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (11)

想象一下,我有两个主要分支的项目,master(production)development。我有一个Jenkins文件(由git push事件触发的一个管道作业),里面有管道逻辑。从管道我调用playbook在服务器上构建和部署应用程序。

现在有我的情况,我想在两台服务器上部署应用程序。一个主服务器和一个暂存(开发)服务器。当我在master分支上推送更改时,我希望将更改的应用程序部署在主(生产)服务器上,但是当我在开发分支上推送更改时,我想在暂存(开发)服务器上部署更改。

现在我有一个Jenkins文件,一个剧本和它的库存。当我推动主分支更改部署在主服务器上。

但是,我如何管理开发分支的上述场景?我应该在每个分支上有两个不同的Jenkins文件(调用不同的Playbook,它将在不同的登台服务器上部署)吗?或者我应该在两个分支上都有两个Jenkins文件?或者这甚至不会起作用,我需要一些其他想法?

我是DevOps这样的新手,如果有人帮助我摆脱这种情况,我将不胜感激。

提问于
用户回答回答于

您正在寻找的内容已在Multibranch Pipeline插件中实现。它基本上自动为每个分支创建一个管道,然后允许您区分用于运行管道的分支。您可以保留一个Jenkins文件,只提取prod / staging特定的差异,并在例如环境变量中设置它们。

扫码关注云+社区

领取腾讯云代金券