我正在尝试在詹金斯(Jenkins(设置一个项目,该项目可以建立我的团队为我们的测试和审查过程设置分支机构。基本流量如下
- 问题出现并分配给开发人员
- 开发人员创建用于修复和修复问题的特征分支
- 创建拉的请求
- 审核代码和功能
在这一点上,我们希望詹金斯能够识别分支,并能够从功能分支或拉力请求中创建构建。
我试图使用多重班心管道用Jenkinsfile识别分支。这似乎找到了分支,但我不确定建立分支的最佳过程。
我为新手问题表示歉意,但我是Git/Jenkins世界的新手。在这一点上,我主要在寻找将使我朝正确方向发展的建议和/或信息源。
谢谢。
这是完全可能的。我们这样做了:
- Jenkins Job
sync-branches
定期运行,基本上由一个脚本组成,该脚本着眼于GIT存储库并找到当前的功能分支;即,遵循我们的命名方案的分支机构尚未合并为master
。然后,脚本将根据需要创建新的Jenkins作业,或删除旧作业(如果确实已将功能分支合并到master
(。 - 您猜对了,第二个Jenkins Job
feature-template
是我们自动创建的作业的模板。
实施这样的脚本是很不言而喻的,应该没有一个很大的问题。我们以一种有点不寻常的脚本语言进行了操作,因此我不会费心在这里发布它。
知识的关键位置是Jenkins有一个CLI https://wiki.jenkins-ci.org/display/jenkins/jenkins/jenkins cli;并且实际作业被配置为每个作业的一个XML文件。因此,在使用它创建新作业之前,可以轻松获取该模板XML文件并替换一些(例如分支名称(。