用node.js写一个jenkins发版脚本
背景
每次到网页里手动发版有点烦,写个脚本来提高开发效率。
CFG
在jenkins设置里获取APITOKEN。
把host和账号密码拼接起来就可以通过鉴权。
consttoken={ user:'', password:'', } consthost='jenkins.xxx.cn'; constbasicUrl=`http://${token.user}:${token.password}@${host}`;
BUILD
调用jenkins提供的jenkins.job.build()方法发版。
//crumbIssuer默认false,true启用CSRF保护支持 constjenkins=require('jenkins')({baseUrl,crumbIssuer:true}); constjob_name='';//想要发版的job的名字 jenkins.job.build( { name:job_name, parameters:{ name:'value',//填写一些参数信息 } }, function(err,data){ if(err)throwerr; console.log('queueitemnumber',data); });
查看发版状态
执行build之后我们想要查看当前build的状态,只成功、失败还是进行中。
jenkins.job.get()获取当前job的信息。data.lastBuild.number可以拿到最后一个build的number,最后一个build也就是我们刚刚触发的build。
jenkins.build.get()获取当前build的信息。data.result获取当前build的结果
jenkins.job.get(job_name,(err,data)=>{ if(err)throwerr; constlastBuildNumber=data.lastBuild.number; console.log('lastbuildnumber',lastBuildNumber); jenkins.build.get(job_name,lastBuildNumber,(err,data)=>{ if(err)throwerr; console.log('lastbuildresult',data.result); }) });
资料
jenkins
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。