目录
一、目的:
公司目前的软件版本发布是通过Jenkins来执行的,生产环境发布版本需要通过相关的OA流程,审批通过后由运维管理员操作。该流程审批过程通知不及时,运维管理员工作量大。
为了简化jenkins版本发布流程,使开发人员能更灵活的控制版本的更新迭代,现准备将Jenkins的版本发布流程,从OA系统转到钉钉软件。在钉钉的OA工作台上提交版本发布流程,审批通过过,钉钉将自动发送Jenkins登陆帐号密码给申请人,帐号密码有一定的有效期,到期后帐号权限自动收回。
本方案涉及技术点:钉钉表单设计、钉钉二次开发、Jenkins二次开发、Python脚本等。
本文干货较多,另有完整代码付费下载,感谢大家打赏支持。也可根据本文介绍,自行研究调试程序。该系统目前已正式运行多月,实测有效!!!
二、钉钉表单设计:
1、登陆钉钉后台管理界面(钉钉管理员或授权),工作台 -- OA审批 -- 创建新表单
请注意,表单的名称(PROJECT、SERVER_1等)在后面的脚本中会使用到,如需改名,则脚本中也需要同步修改。另外,PROJECT的项目名称,需和脚本中调用的数据库的项目名称一至。
发布服务名称,可设置多个,如SERVER_2、SERVER_3等
流程审批:根据公司各部门具体情况,可添加主管审批、测试审批。注意,最后再增加1个发起人的审批流程,这样,在主管、测试审批通过后,在申请人准备发布版本时,再点确认后,5分钟内钉钉就会发送帐号密码(由于密码有时效性,这样可以避免过早接收密码)
2、创建1个H5应用,用于钉钉发送消息通知
需填写钉钉的应用凭证:AgentId、AppKey、AppSecret
审批流程通过后,系统将会发送通知,告知流程发起人Jenkins平台的帐号、密码。钉钉将通过工作通知发送,见下图。
三、Jenkins设置(插件Role-based ):
1、Jenkins版本需大于V2.204,否则无法安装相关插件
2、关闭跨站请求伪造保护: