zoukankan      html  css  js  c++  java
  • jenkins之-----------在必要的时候并发构建

    jenkins支持在同一节点支持同任务并发,但存在形成报告时会覆盖相应的文件,查看官网后发现有介绍“在必要的时候并发构建”

    大致意思就是:将此项勾选后,可以同时执行,执行在任务自己的workspace上,默认的,使用@<num>来区分不同的工作区,如:@2,分隔符@可能通过hudson.slaves.WorkspaceList来更改。

    如果,项目使用了自定义的工作空间的话,所有的构建都会在相同的工作空间执行,所以相关的数据或结果都会被覆盖。

    试验前提,jenkins已部署成功,本次试用的jenkins部署在linux上

    一‘、测试并发构建测试

      1、首先我们要在对应节点上将执行者数量设成多个,如下图,将master设成了2个

        

      2、新建Test任务,并写构建脚本

        

    3、进行多次构建,查看Console输出

      分别输出:

      

    可以看出,同时执行任务时,通过job名+@数字来区分,在对应的文件中也有两个项目

    二、slave节点测试并发构建测试

    之前要利用节点进行测试时,都是直接在job直接自定义工作空间,但这样的话会导致同时执行时不能区分,所以要用如下步骤建:

    1、新建新节点,并将执行数设成2,将远程工作目录设成你要执行的目录

    2、还是新建Test项目,输入以下脚本

    3、多次构建,结果如下

    也可以看出,自动创建了新的workspace,在实际的执行机器上,也新建了对应的目录

    修改hudson.slaves.WorkspaceList方法:

    1、如果是jenkins在linux上安装,修改/etc/sysconfig/jenkins

        在JENKINS_JAVA_OPTIONS中加上hudson.slaves.WorkspaceList=xxx  xxx为你想的分隔符

    2、直接在jenkins命令行上输入

    System.setProperty("hudson.slaves.WorkspaceList", xxx)
    但重启后失效
  • 相关阅读:
    事务与隔离级别
    使用 Spring Boot 构建 RESTful API
    Dockerfile 指令详解
    Java 函数式编程--流操作
    Java ThreadLocal 的使用与源码解析
    node+express的html页面访问
    node+mysql数据库连接(入门)
    ensp的基础路由命令,接口,下一跳的配置,入门必备
    初识JSP/Severlet技术开发Web应用
    jQuery基础及选择器
  • 原文地址:https://www.cnblogs.com/landhu/p/8289750.html
Copyright © 2011-2022 走看看