当前位置: 首页 > news >正文

成都网站设计招聘中山人才招聘网官网

成都网站设计招聘,中山人才招聘网官网,微信营销模式有哪些,设计师服务平台鱼巴士有哪些网站您可能知道#xff0c;Jenkins是高度可配置的CI服务器。 我们可以设置不同的自定义构建过程。 我将分享一些我用来设置Jenkins工作层次的方法。 这是用例#xff1a; 我们有一个主入口作业被调用以启动整个构建过程。 这项工作可以有一个到多个子工作。 #xff08;第2级Jenkins是高度可配置的CI服务器。 我们可以设置不同的自定义构建过程。 我将分享一些我用来设置Jenkins工作层次的方法。 这是用例 我们有一个主入口作业被调用以启动整个构建过程。 这项工作可以有一个到多个子工作。 第2级 每个子工作也可以有一个到多个子工作。 第3级 主要思想是将所有儿童工作的身份收集/汇总到主要入境工作中。 请参见下面的示例屏幕快照该示例可视化了总体思路。 这里 Main_Job是单入口作业必须包含所有同级作业状态 Job_Set_1和Job_Set_2是两个子作业 Build_ [1-4]是Job_Set_1的子作业 Tests_ [1-3]是Job_Set_2的子作业 现在我们应该使用一些Jenkins插件来构建这样的层次结构。 我一直在使用Multijob Plugin 。 请参阅以下配置的屏幕截图 Main_Job /配置 Job_Set_1 /配置 Job_Set_2 / configure 但是这还不够。 我们必须将所有兄弟作业的状态汇总到Main_Job中 。 我一直在使用修补的Groovy Postbuild插件 。 修改后的插件位于https://github.com/halyph/groovy-postbuild-plugin Groovy Postbuild插件允许我们为作业的Post-build Actions编写Groovy脚本。 该脚本可以访问整个Jenkins环境并且可以使用所有已安装的Jenkins插件的功能 这是此脚本的来源 import hudson.model.* import com.tikal.jenkins.plugins.multijob.*;void log(msg) {manager.listener.logger.println(msg) }threshold Result.SUCCESSvoid aggregate_results() {failed falsemainJob manager.build.getProject().getName()job hudson.model.Hudson.instance.getItem(mainJob)log -------------------------------------------------------------------------------------log Aggregated status reportlog -------------------------------------------------------------------------------------log(${mainJob} #${manager.build.getNumber()} - ${manager.build.getResult()})job.getLastBuild().getSubBuilds().each { subBuild-subJob subBuild.getJobName() subJobNumber subBuild.getBuildNumber()job hudson.model.Hudson.instance.getItem(subBuild.getJobName())log ${subJob} #${subJobNumber} - ${job.getLastCompletedBuild().getResult()}log job.getLastCompletedBuild().getLog()//println subBuilddePhaseJob hudson.model.Hudson.instance.getItem(subBuild.getJobName())dePhaseJobBuild dePhaseJob.getBuildByNumber(subBuild.getBuildNumber())dePhaseJobBuild.getSubBuilds().each { childSubBuild -try {log ${childSubBuild.jobName}job hudson.model.Hudson.instance.getItem(childSubBuild.getJobName())build job.getBuildByNumber(childSubBuild.getBuildNumber())indent log ${indent} #${build.getNumber()} - ${build.getResult()} log build.getLog()if(!failed build.getResult().isWorseThan(threshold) ) {failed true}} catch (Exception e) { log(ERROR: ${e.getMessage()})failed true}}}if(failed) {manager.build.setResult(hudson.model.Result.FAILURE)} }try {aggregate_results() } catch(Exception e) {log(ERROR: ${e.message})log(ERROR: Failed Status report aggregation)manager.build.setResult(hudson.model.Result.FAILURE) } 您也可以在GitHub Gist上找到它 https : //gist.github.com/4610274 。 这个脚本很傻。 它只是为每个子作业提取在Main_Job控制台中打印下一个信息 工作名称 建立数字 生成结果状态 建立日志 此外它还可以根据子作业的状态来设置Main_Job状态。 请参阅脚本中的threshold变量。 汇总报告如下所示 Started by user anonymous Building in workspace C:\Users\oivasiv\.jenkins\jobs\Main_Job\workspace Starting build job Job_Set_1. Finished Build : #8 of Job : Job_Set_1 with status :SUCCESS Starting build job Job_Set_2. Finished Build : #8 of Job : Job_Set_2 with status :SUCCESS ------------------------------------------------------------------------------------- Aggregated status report ------------------------------------------------------------------------------------- Main_Job #8 - SUCCESS Job_Set_1 #8 - SUCCESS Started by upstream project Main_Job build number 8 Building in workspace C:\Users\oivasiv\.jenkins\jobs\Job_Set_1\workspace Starting build job Build_1. Starting build job Build_2. Finished Build : #8 of Job : Build_1 with status :FAILURE Finished Build : #8 of Job : Build_2 with status :SUCCESS Starting build job Build_3. Starting build job Build_4. Finished Build : #6 of Job : Build_3 with status :UNSTABLE Finished Build : #6 of Job : Build_4 with status :SUCCESS Notifying upstream projects of job completion Finished: SUCCESSBuild_1#8 - FAILURE Started by upstream project Job_Set_1 build number 8 Building in workspace C:\Users\oivasiv\.jenkins\jobs\Build_1\workspace Setting result to [Failed] Build step Set the build result changed build result to FAILURE Build step Set the build result marked build as failure Notifying upstream projects of job completion Finished: FAILUREBuild_2#8 - SUCCESS Started by upstream project Job_Set_1 build number 8 Building in workspace C:\Users\oivasiv\.jenkins\jobs\Build_2\workspace Setting result to [Success] Build step Set the build result changed build result to SUCCESSnull Notifying upstream projects of job completion Finished: SUCCESSBuild_3#6 - UNSTABLE Started by upstream project Job_Set_1 build number 8 Building in workspace C:\Users\oivasiv\.jenkins\jobs\Build_3\workspace Setting result to [Unstable] Build step Set the build result changed build result to UNSTABLE Notifying upstream projects of job completion Finished: UNSTABLEBuild_4#6 - SUCCESS Started by upstream project Job_Set_1 build number 8 Building in workspace C:\Users\oivasiv\.jenkins\jobs\Build_4\workspace Setting result to [Success] Build step Set the build result changed build result to SUCCESS Notifying upstream projects of job completion Finished: SUCCESSJob_Set_2 #8 - SUCCESS Started by upstream project Main_Job build number 8 Building in workspace C:\Users\oivasiv\.jenkins\jobs\Job_Set_2\workspace Starting build job Test_1. Finished Build : #8 of Job : Test_1 with status :SUCCESS Starting build job Test_2. Finished Build : #8 of Job : Test_2 with status :UNSTABLE Starting build job Test_3. Finished Build : #8 of Job : Test_3 with status :SUCCESS Notifying upstream projects of job completion Finished: SUCCESSTest_1#8 - SUCCESS Started by upstream project Job_Set_2 build number 8 Building in workspace C:\Users\oivasiv\.jenkins\jobs\Test_1\workspace Setting result to [Success] Build step Set the build result changed build result to SUCCESS Notifying upstream projects of job completion Finished: SUCCESSTest_2#8 - UNSTABLE Started by upstream project Job_Set_2 build number 8 Building in workspace C:\Users\oivasiv\.jenkins\jobs\Test_2\workspace Setting result to [Unstable] Build step Set the build result changed build result to UNSTABLE Notifying upstream projects of job completion Finished: UNSTABLETest_3#8 - SUCCESS Started by upstream project Job_Set_2 build number 8 Building in workspace C:\Users\oivasiv\.jenkins\jobs\Test_3\workspace Setting result to [Success] Build step Set the build result changed build result to SUCCESS Notifying upstream projects of job completion Finished: SUCCESSBuild step Groovy Postbuild changed build result to FAILURE Build step Groovy Postbuild marked build as failure Notifying upstream projects of job completion Finished: FAILURE 因此此类作业状态聚合和Groovy后处理有什么好处 我们在一个地方拥有工作状态 从Main_Job发送的电子邮件通知包含此状态 实现任何自定义后处理逻辑的能力 可以通过Groovy Scrip重用其他插件功能 参考来自JCG合作伙伴 Orest Ivasiv的Jenkins分层作业和作业状态汇总 在Knowledge Is Everything博客上。 翻译自: https://www.javacodegeeks.com/2013/02/jenkins-hierarchical-jobs-and-jobs-status-aggregation.html
http://www.pierceye.com/news/330109/

相关文章:

  • 松江网站开发培训课程海外域名注册商
  • 智慧景区网站服务建设线下课程seo
  • 做3个网站需要多大的服务器做地铁建设的公司网站
  • 深圳app网站建设哪家好广西桂林
  • 网站开发及上线过程网站建设备案策划书
  • 杭州九鸿科技网站开发网站模板 素材
  • 网站建设网站软件有哪些wordpress如何输入拼音
  • 昆山网站建设哪家便宜简单的模板网站
  • 做图标得英文网站wordpress写代码插件
  • 网站网页设计案例wordprees可以做棋类网站吗
  • 天河区门户网站官网小学生一分钟新闻播报
  • 漯河网站建设lhwzzz网络服务器机柜
  • 有口碑的武进网站建设国内做房车游网站
  • 山东省城乡住房和城乡建设厅网站济南网站建设wuliankj
  • 网站首页跳出弹窗wordpress远程后台设置
  • 免费信息网站建设平台影响网站排名的因素 权重
  • 做房产网站接不到电话湖北网站建设平台
  • 厦门国外网站建设公司排名上海自贸区注册公司优惠政策
  • 网站建设的公司实习做什么成都住建局官网住建智慧建管
  • 建一个免费看电影的网站犯法不国家企业信用信息没有网站怎么做
  • 长春网站vantage wordpress
  • 帝国cms如何做网站地图自己做的网站还要买域名么
  • 网站建设与维护税率网络营销案例及视频
  • 网站建设 繁体精品课网站制作
  • 常州 招网站开发seo的名词解释
  • 二级域名网站seo竞价网站建设
  • 麻栗坡网站建设正规网站建设
  • 邯郸网站建设哪家好重庆app开发
  • 自学网站开发多久大型网站建站
  • 网站设计定制多少钱新增备案网站负责人