开发人员团队对工具有特定要求。 [I have] [read] [a lot] [about] [ideal] [workflows]并提出了类似的内容:
- 开发人员在 Jira 中创建更改请求,修补程序,功能等。将沿着工作流程跟踪该唯一项目ID。
- 开发人员从 Git 中提取回购,创建一个
feature-a
分支,在本地提交更改并推送到远程git repo。 禁止推送master
。
- Git hook触发 Jenkins 作业,该作业运行冒烟测试(编译和单元测试)。如果测试通过,则在 Crucible 。
中创建修订
- 除非代码审查委员会批准更改,否则我们必须从步骤(1)开始。 Crucible 会触发 Jenkins 作业。
- Jenkins 自动合并到
master
。如果失败则需要手动合并并返回步骤(2)。审查步骤(4)可能被绕过。
- Jenkins 启动QA测试(集成测试,静态分析,系统测试,IP扫描等)。
- Gatekeeper (或高级开发人员)宣传该候选发布的特定提交。
醇>
詹金斯有很多插件,但没有什么是开箱即用的。我需要开发许多连接器(Jenkins-Crucible,Jenkins-Git用于自动合并)。更换工具不是一种选择。
如何简化工作流程?