Python实现统计Jenkins multibranch发布的分支及时间等 页面 … 部署文档 跳到banner的尾部 回到标题开始 转至元数据结尾

一、背景

使用multibranch发布到测试环境,各个环境的应用当前使用的是哪个分支无法使用Jenkins自带的统计工具看到,因此用Python写了个小程序记录发布的相关信息到MySQL,包括应用名、环境、主机、分支、时间。

二、实现

1、Jenkinsfile中,调用ansible部署应用。在调用ansible时,将应用名、环境、分支作为输入参数。

ansiblePlaybook extraVars:["jobname":"$jobname", "StartupPara":"${params.runEnv}", "branchname":"$branchname"], installation: 'ansible-playbook', limit: "${params.runEnv}", playbook: "${params.playbook}", sudoUser: null

2、在部署应用的ansible playbook剧本添加一条:

- shell: "/usr/bin/python /apps/sh/deployStatic.py {{ jobname }} {{ StartupPara }} {{ branchname }}"

3、在测试环境的MySQL建表

CREATE TABLE `t_deploystatic` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`jobname` varchar(255) NOT NULL,
`runEnv` varchar(20) NOT NULL,
`hostname` varchar(255) NOT NULL,
`branchname` varchar(255) NOT NULL,
`create_time` datetime DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
)

4、Python代码deployStatic.py,并放到测试环境的各个主机

原文地址:https://www.cnblogs.com/hyming011/p/8252543.html