DevOps 推广及改进过程中,组织级准备了 DevOps 流水线套餐供项目组使用,pipeline 包含了代码合规检查任务,该任务搭配质量门禁任务进行指标及增量控制,质量任务中 圈复杂度平均值、圈复杂度最大值、重复率百分比等几个值,由项目组自行定义。
根据近期实践结果,梳理了如下详细的代码合规检查任务配置实践。
- 选中流水线套餐中的代码合规检查任务
- 生成类型
支持 Maven、ant、Msbuild,Java 代码请选择 Maven,下述相关以 Maven 类型为例。
- 选择 DevOps 规则集
- 确认 POM 文件路径,在 Maven POM 文件中填入正确的路径及文件名(可引用,可直接指定)
1)引用:
2)直接指定:
- 指定 jdk 类型(sun或ibm),jdk版本(1.5-1.8)。
- 是否同步
1)true:检查完成没有增量才执行下一个任务
2)false:只将检查消息发送给代码合规检查服务,即可执行 pipeline 的下一个任务
- 是否增量通知
1)勾选,进行增量控制,如有增量且发送邮件,代码合规检查任务失败;
1、收件人地址,可选。
2、是否给提交人发邮件,默认yes,发送。
3、用于比较的buildId,默认-1,将此次报告与上次运行成功(pipeline所有任务都成功)的buildid对应的代码合规检查报告进行比对,如有新增,代码合规检查返回1,任务失败;支持输入指定的buildid,该buildid需要成功生成了报告(无需pipeline所有任务都成功),供异常情况处理时或熟练使用代码合规检查任务后使用,日常使用,建议保持值为-1。
4、目标分支名称,被合并的分支名称,供邮件正文中作为标记字段使用,可以不填!
2)不勾选,不启动增量控制,如有增量,不影响代码合规检查任务成功。
- 控制选项、环境变量、输出变量按默认即可,可按需修改。
对于行内非 DevOps 流水线套餐定制的 pipeline 如需添加代码合规检查任务,也可照上述说明进行配置(对于规则集选用,项目组可视需求进行选择)。
作者简介 张金叶,中国农业银行研发中心 DevOps 代码合规检查模块成员,从事 DevOps 流水线推广协调工作及代码合规检查组织级检查及支持工作,具有丰富的代码合规检查工作经验。
2020年11月27日,由云计算开源联盟指导,由高效运维社区和开放运维联盟联合主办的 2020 GOPS 全球运维大会 · 上海站上,隆重发布了 DevOps 标准持续交付部分第九批评估结果,中国农业银行手机存款贷款模块顺利通过由中国信通院开展的《研发运营一体化(DevOps)能力成熟度持续交付3级评估。DevOps 标准共分 5 级,持续交付部分如果能达到 3 级已经是国内领先水准,这代表着中国农业银行在参评项目的持续交付能力达到国内领先水平。这是中国农业银行在2020年 6 月 19 日同时 5 个项目通过持续交付标准评估之后通过的第 6 个项目。