1、Configuring automatic builds
配置自动构建
直接post一个url,触发自动构建。(在浏览器打开这个地址,然后点击proceed按钮,也可以)
语法:http://YOURHOST/jenkins/job/PROJECTNAME/build
Eg:
http://192.168.70.112:8081/job/pay_center_api/build(直接构建)
http://192.168.70.112:8081/job/pay_center_api/polling (这个,代码如果没有更新,不会构建)
2、Builds by source changes
周一至周五,每15分钟构建一次。
功能:Jenkins定时去比较当前版本与svn上的版本是否一致,如果不一致,则更新,如果一致,则不更新。
3、使用python脚本(创建python虚拟环境)
3.1 linux环境
①创建一个shell脚本
if [ ! -d "venv" ]; then
/usr/local/bin/virtualenv venv
fi
source venv/bin/activate
#pip install -i http://pypi.douban.com/simple -r requirements.txt
pip install jenkinsapi
#/usr/local/bin/python2.7 app.py
#gunicorn -b :9008 -w 2 app:app --log-file=-
#cd /var/lib/jenkins/jobs/test/workspace/venv/lib/python2.7/site-packages
#/usr/local/lib/python2.7/site-packages
②创建python脚本
# -*- coding: utf-8 -*-
#http://python-jenkins.readthedocs.org/en/latest/api.html
#自动重启某一个项目
#引用路径到path中
import sys
sys.path.append(' /var/lib/jenkins/jobs/test/workspace/venv/lib/python2.7/site-packages ')
import jenkinsapi
import time
from jenkinsapi.jenkins import Jenkins
print '------------------'
job_list = ['pay_center_api','pay_center_hou_tai','pay_center_qian_tai']
J = Jenkins('http://192.168.70.112:8081','admin', 'admin')
#关闭构建
for job in job_list :
if J[job].get_last_build().stop():
print J[job],'stop()','成功'
time.sleep(1)
else:
print J[job],'没有在运行 '
time.sleep(3)
#构建
for job in job_list :
J[job].invoke()
print J[job],'启动成功。。。 '
3.2 windows环境
创建python脚本即可。
# -*- coding: utf-8 -*-
#http://python-jenkins.readthedocs.org/en/latest/api.html
#自动重启某一个项目
import jenkinsapi
import time
from jenkinsapi.jenkins import Jenkins
print '------------------'
job_list = ['pay_center_api','pay_center_hou_tai','pay_center_qian_tai']
J = Jenkins('http://192.168.70.112:8081','admin', 'admin')
#关闭构建
for job in job_list :
if J[job].get_last_build().stop():
print J[job],'stop()','成功'
time.sleep(1)
else:
print J[job],'没有在运行 '
time.sleep(3)
#构建
for job in job_list :
J[job].invoke()
print J[job],'启动成功。。。 '