在Jenkins中的多环境(DEV,UAT,PROD)中部署

Ish*_*att 6 python jenkins

我有一个Python应用程序,我想首先在DEV中部署它,然后在UAT中部署它,最后在PROD上部署它.我可以使用带有Webhooks的Jenkins构建它,这样当它被推送到DEV时它会触发一个构建(它运行nosetests套装).我希望这个应用程序随后在UAT和PROD中被提升,如果分别在DEV和UAT中构建.我不想要任何人工干预.可以用Jenkins完成吗?如果不是什么可能是最好的选择?

PS我想从我的Jenkins服务器远程登录我的DEV,UAT,PROD服务器.并触发构建,但我仍然不清楚如何做到这一点?

Zor*_*art 8

最佳做法是使用Jenkins管道.您可能需要使用输入步骤在您的环境之间进行,并让您(我假设)异步部署触发管道延续到下一阶段(环境)


Rog*_*oto 5

一种选择是将 UAT 和 PROD 远程环境添加为 Jenkins 从属环境。 检查此文档以获取更多相关信息

添加新节点时,您可以为添加为从属的每个环境设置表达式标签,例如:remote_uat。然后,您可以在作业定义中使用“限制此项目可以运行的位置”选项,并引用您之前定义的标签。这将告诉詹金斯仅在分配有该标签表达式的远程节点中构建该作业。

要使 jenkinst 在成功的 DEV 构建后触发 UAT 和 PROD 相关构建,您应该使用Parameterized Trigger Plugin,这将使您能够配置作业以在执行后步骤中触发其他作业。