我们的堆栈按标题排列:JIRA,Bitbucket,Jenkins和Kubernetes。我正在尝试找出一种管理代码生命周期的好方法。目前,我们正在对Bitbucket进行更改。 JIRA用于问题跟踪。 Jenkins配置了用于构建应用程序和Docker容器,然后部署到Kubernetes的管道。我将Bitbucket配置为触发Jenkins上的构建作业,然后部署到Kubernetes集群。但是,我只看到这对于开发环境生命周期是可行的。我不确定管理部署到更高环境(例如Stage或Prod)的最佳实践是什么。我已经看到了一些想法,例如标记提交并修改Jenkins管道以在识别出标签时做出相应反应,这似乎很难管理。例如,如果某人无意间为Prod标记了提交,则可能触发不必要的部署。此外,JIRA与已构建的Docker工件之间存在脱节,因此我们可以将特定的票证引用到已验证的映像以进行部署。我感谢大家对此的投入。
答案 0 :(得分:0)
Jenkins在协调到多个环境的部署方面并不是最出色的。您可以在阶段部署之前和产品部署之前在jenkins管道中添加批准阶段(使用input
步骤)。您可以在git分支名称或提交消息中包含jira问题密钥,并将其作为docker image标签的一部分。尽管我只见过它可以与Bamboo一起使用,但是从理论上讲,仍有一些方法可以向jira报告有关在各种环境中部署的进度(这将在jira问题上显示)。让我们知道结果如何!