Jenkins 詹金斯:更改不同作业的构建历史记录

Jenkins 詹金斯:更改不同作业的构建历史记录,jenkins,Jenkins,我有两份詹金斯的工作: 建设项目 部署它 两者都工作得很好,我可以从项目构建作业触发部署作业 步骤: 使用应用程序作业中的参数构建>>检查在开发中部署>>构建 在应用程序作业中的构建历史中添加一个黄色星形标记-使用groovy后期构建操作(下面的代码) 作为生成后操作触发部署作业 问题: 部署作业完成且失败后,从部署作业更改应用程序作业的构建历史记录(黄色星号>>例如红色星号)。我该怎么做 if(“true”.equals(manager.build.buildVariables.get('

我有两份詹金斯的工作:

  • 建设项目
  • 部署它
两者都工作得很好,我可以从项目构建作业触发部署作业

步骤:

  • 使用应用程序作业中的参数构建>>检查在开发中部署>>构建
  • 在应用程序作业中的构建历史中添加一个黄色星形标记-使用groovy后期构建操作(下面的代码)
  • 作为生成后操作触发部署作业
  • 问题:

  • 部署作业完成且失败后,从部署作业更改应用程序作业的构建历史记录(黄色星号>>例如红色星号)。我该怎么做
  • if(“true”.equals(manager.build.buildVariables.get('DEPLOY_ON_DEV')){ addBadge(“star gold.gif”,“在开发人员上部署的快照”) }
    这花了我一段时间来发展,但现在它的作品像一个魅力后建设的行动→ 添加生成后操作→ Groovy后期构建→ Groovy脚本:

    导入hudson.model.Build
    导入hudson.model.Cause
    导入hudson.model.Project
    导入jenkins.model.jenkins
    导入org.jvnet.hudson.plugins.groovypostbuild.GroovyPostbuildAction
    def log=manager.listener.logger
    log.println('------------------------)
    log.println('Groovy Postbuild')
    //装饰这个建筑
    manager.addShortText('部署在DEV上的快照'、'黑色'、'金色'、'1px'、'黑色')
    manager.addInfoBadge('在开发人员上部署的快照')
    manager.addBadge('star-gold.png','SNAPSHOT deployed on DEV')
    //装饰上游建筑
    Jenkins-Jenkins=Jenkins.getInstance()
    List projects=jenkins.getAllItems(Project.class)
    log.println(“此生成:'${manager.build}'-->“+manager.build.getResult())
    println('装饰以下上游版本:')
    //log.println(manager.build.getUpstreamBuilds())//打印“[:]”,因此使用它来获取上游版本不起作用
    原因(原因:manager.build.getCauss()){
    用于(项目:项目){
    if(cause.toString().contains(project.getName())){
    int no=cause.getUpstreamBuild()
    Build usb=project.getBuildByNumber(否)
    log.println(“${usb}”)
    usb.getActions().add(GroovyPostbuildAction.createShortText(
    '快照部署在DEV上','黑色','金色','1px','黑色');
    usb.getActions().add(GroovyPostbuildAction.createInfoBadge(
    “在开发人员上部署的快照”)
    usb.getActions().add(GroovyPostbuildAction.createBadge(
    'star gold.png','SNAPSHOT deployed on DEV'))
    }
    }//用于(项目)
    }//原因
    log.println('------------------------)
    
    注:

    无论构建结果如何,这都会添加徽章,但我相信您可以轻松添加适当的
    if
    。有关移除徽章的信息,请参阅

    参考资料:


    我花了一段时间才开发出来,但现在它在构建后的动作中就像一种魅力→ 添加生成后操作→ Groovy后期构建→ Groovy脚本:

    导入hudson.model.Build
    导入hudson.model.Cause
    导入hudson.model.Project
    导入jenkins.model.jenkins
    导入org.jvnet.hudson.plugins.groovypostbuild.GroovyPostbuildAction
    def log=manager.listener.logger
    log.println('------------------------)
    log.println('Groovy Postbuild')
    //装饰这个建筑
    manager.addShortText('部署在DEV上的快照'、'黑色'、'金色'、'1px'、'黑色')
    manager.addInfoBadge('在开发人员上部署的快照')
    manager.addBadge('star-gold.png','SNAPSHOT deployed on DEV')
    //装饰上游建筑
    Jenkins-Jenkins=Jenkins.getInstance()
    List projects=jenkins.getAllItems(Project.class)
    log.println(“此生成:'${manager.build}'-->“+manager.build.getResult())
    println('装饰以下上游版本:')
    //log.println(manager.build.getUpstreamBuilds())//打印“[:]”,因此使用它来获取上游版本不起作用
    原因(原因:manager.build.getCauss()){
    用于(项目:项目){
    if(cause.toString().contains(project.getName())){
    int no=cause.getUpstreamBuild()
    Build usb=project.getBuildByNumber(否)
    log.println(“${usb}”)
    usb.getActions().add(GroovyPostbuildAction.createShortText(
    '快照部署在DEV上','黑色','金色','1px','黑色');
    usb.getActions().add(GroovyPostbuildAction.createInfoBadge(
    “在开发人员上部署的快照”)
    usb.getActions().add(GroovyPostbuildAction.createBadge(
    'star gold.png','SNAPSHOT deployed on DEV'))
    }
    }//用于(项目)
    }//原因
    log.println('------------------------)
    
    注:

    无论构建结果如何,这都会添加徽章,但我相信您可以轻松添加适当的
    if
    。有关移除徽章的信息,请参阅

    参考资料:

    if ("true".equals(manager.build.buildVariables.get('DEPLOY_ON_DEV'))) { manager.addBadge("star-gold.gif", "SNAPSHOT deployed on DEV") }