Jenkins pipeline/groovy: 加载相对于当前脚本的脚本
Jenkins pipeline/groovy: Load script relative to current script
我有一个管道 groovy 脚本,我从另一个脚本加载它:
load("path/to/my/script/pipeline.groovy")
现在,在此脚本中,我想加载另一个 groovy 脚本。但我不知道完整的 path/to/my/script
路径。我试过了:
load("./subfolder/subscript.groovy")
但是这样是找不到的。我可以以某种方式加载相对于当前脚本文件的 groovy 脚本吗?
一种方法是在您的工作目录中加载第二个脚本 (curl),第一个脚本可以从那里找到并加载它。
如果您要加载多个远程脚本,您可能需要考虑使用 the shared library plugin。
如果子文件夹中存在 groovy 文件,您可以使用 findFiles step:
def subscript = findFiles(glob: '**/subscript.groovy')
load(subscript[0].path)
我有一个管道 groovy 脚本,我从另一个脚本加载它:
load("path/to/my/script/pipeline.groovy")
现在,在此脚本中,我想加载另一个 groovy 脚本。但我不知道完整的 path/to/my/script
路径。我试过了:
load("./subfolder/subscript.groovy")
但是这样是找不到的。我可以以某种方式加载相对于当前脚本文件的 groovy 脚本吗?
一种方法是在您的工作目录中加载第二个脚本 (curl),第一个脚本可以从那里找到并加载它。
如果您要加载多个远程脚本,您可能需要考虑使用 the shared library plugin。
如果子文件夹中存在 groovy 文件,您可以使用 findFiles step:
def subscript = findFiles(glob: '**/subscript.groovy')
load(subscript[0].path)