从Jenkins共享文件夹中的资源文件夹调用脚本

时间:2019-12-13 04:37:35

标签: powershell jenkins jenkins-pipeline shared-libraries jenkins-groovy

在资源文件夹中具有PowerShell脚本,并希望在vars文件夹下的共享库.groovy脚本中使用此脚本。有办法吗?

2 个答案:

答案 0 :(得分:1)

您可以使用libraryResource(file-in-resources)docs)从库资源中以文本形式加载文件。您可以使用writeFiledocs)写入工作区并执行。

由于该库是在工作区旁边的某个地方签出的,因此您可以直接执行它。

答案 1 :(得分:1)

要从共享库的资源目录运行PS脚本,并假设psScript1.ps1your-shared-library/resources/中:

powershell "${libraryResource 'psScript1.ps1'}"

这很好用,但是,它不允许您传递参数。我似乎找不到单行方法。

以@christopher的答案为基础,这是两行解决方案:

writeFile file: 'tempFile.ps1', text: "${libraryResource 'psScript1.ps1'}"
powershell './tempFile.ps1 -yourParam $yourParam'

在测试中,我发现./开始需要临时文件路径。

相关问题