【问题标题】:Jenkins - Add a dynamic label to a buildJenkins - 为构建添加动态标签
【发布时间】:2018-11-27 07:29:15
【问题描述】:

我正在尝试在 Jenkins 中完成以下任务: 1)构建一个maven项目 2)运行测试用例时,我将某些消息打印到控制台输出 3)解析构建的控制台输出并确定输出中是否存在某些模式 4)如果模式存在,我想用特定的字符串标记构建

我已经完成了步骤 1-3。我无法创建动态标签并将其绑定到构建。我有一个 Groovy 脚本,它解析控制台输出并确定该模式是否存在于构建的输出中。

Bamboo 提供此功能以根据构建控制台输出中的正则表达式标记构建。 链接-https://confluence.atlassian.com/bamboo0606/using-bamboo/jobs-and-tasks/configuring-jobs/configuring-miscellaneous-settings-for-a-job/configuring-automatic-labeling-of-job-build-results

我已经浏览了各种现有的 Jenkins 插件,但未能成功实现此功能。是否有实现此功能的插件,或者我可以在 Groovy 脚本中添加额外的行来创建动态构建标签。 任何帮助表示赞赏。

【问题讨论】:

    标签: jenkins build label


    【解决方案1】:

    您可以使用if设置代理:

    def AGENT_LABEL = null
    
    node('master') {
      stage('Checkout and set agent'){
         checkout scm
         ### Or just use any other approach to figure out agent label: read file, etc
         if (env.BRANCH_NAME == 'master') {
            AGENT_LABEL = "prod"
         } else {
            AGENT_LABEL = "dev"
         }
       }
    }
    
    pipeline {
        agent {
           label "${AGENT_LABEL}"
        }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-12-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-01-05
      • 2016-12-30
      相关资源
      最近更新 更多