我在Jenkins运行了一个管道作业,我想知道它运行的节点的名称。有没有办法从作业的Groovy脚本中获取节点名称?
我尝试过以下代码:
print currentBuild.getBuiltOn().getNodeName()
错误是:
org.jenkinsci.plugins.scriptsecurity.sandbox.RejectedAccessException: unclassified method org.jenkinsci.plugins.workflow.job.WorkflowRun getBuiltOn
我也试过这个:
def build = currentBuild.build()
print build.getExecutor().getOwner().getNode().getNodeName()
但结果是''。
答案 0 :(得分:15)
有一个环境变量' NODE_NAME'有这个。
你可以像这样访问它:
echo "NODE_NAME = ${env.NODE_NAME}"
在编辑管道作业时,您可以通过转换为"管道语法"找到所有可用的环境变量。帮助链接(页面左侧)然后查找"全局变量"部分并单击“全局变量参考”"。有一节" env"列出了可用的环境变量。