【问题标题】:How to get the jobname from jenkins如何从詹金斯获得工作名称
【发布时间】:2012-01-08 17:04:21
【问题描述】:

有没有办法在 jenkins 中获取当前构建的作业名并将其作为参数传递给 ant 构建脚本?

【问题讨论】:

  • 对我来说,JOB_NAME 和 PROJECT_NAME 都返回更长版本的作业名称,其中包括来自 jenkins root 的路径。什么是捷径?

标签: jenkins


【解决方案1】:

Jenkins 设置了一些环境变量,例如JOB_NAME(请参阅here)以了解有关变量设置的更多详细信息。

然后您可以通过 ${env.JOB_NAME} 在 ant 中访问这些。

编辑:在同一页面here 上还有一些环境变量的操作方法。

【讨论】:

    【解决方案2】:

    一个类似的问题,我正在寻找 shell 脚本的作业名称。

    在“执行 shell”>“命令”文本框中, 以下两项都对我有用:

    echo $JOB_NAME  
    echo "$JOB_NAME"
    

    【讨论】:

    • 我在安装了 jenkins 的 ubuntu 机器上运行 echo $JOB_NAME,但得到空白输出
    • # echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/本地/游戏:/usr/local/bin/phpunit:/var/lib/jenkins
    • 我说的是詹金斯内部,而不是詹金斯外部。打开 Jenkins,创建一个作业,然后在 'Execute shell' > 'Command' 文本框中,写上面两个,都可以。上面提到的工作是在 Jenkins 内部,而不是在 jenkins 外部的环境变量。
    【解决方案3】:

    您可以根据全局变量设置特殊变量。简单:

    THEJOB="${JOB_NAME.substring(JOB_NAME.lastIndexOf('/') + 1, JOB_NAME.length())}"
    

    现在 $THEJOB 是你的工作名称

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-09-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-22
      • 1970-01-01
      • 2020-07-04
      • 1970-01-01
      相关资源
      最近更新 更多