当前位置: 首页 > 面试题库 >

如何在Jenkins管道脚本中使用源命令

齐鸿光
2023-03-14
问题内容

我最近将bash执行命令重写为Jenkins管道。旧代码就像

...
source environment.sh
//Build
//Test
...

现在,我使用管道脚本来包装命令,像这样

sh '''
    ...
    source environment.sh
    //Build
    //Test
    ...
'''

但是,我遇到了一个错误.../.jenkins/script.sh: line 9: source: environment.sh: file not found。当我尝试时less environment.sh,它会正确显示。所以我怀疑source command内部有问题sh wrap

在使用管道之前,source environment.sh命令在外壳执行中工作正常。因此,源代码安装在Jenkins服务器上,似乎管道脚本不知道源命令是什么。

如何在sh wrapd块中运行source命令?


问题答案:

替换source environment.sh

. ./environment.sh

请注意,第一个点后有一个空格。



 类似资料:
  • 我使用Jenkins在docker容器中使用以下命令 码头工人拉詹金斯/詹金斯 docker run-p8080:8080--name=jenkins master jenkins/jenkins 获取此错误 calc.py/var/jenkins_home/workspace/pythoncalculator@tmp/耐用-b7e99e01/脚本。sh:1:/var/jenkins\u home

  • 问题内容: 我想在脚本化管道中使用选项。 可能吗 ? 问题答案: 您可以从这里尝试答案

  • 我正在构建一个jenkins管道,作业可以由远程触发。我需要知道哪个IP触发了作业。所以我有一个小Groovy脚本,它返回远程IP。使用EnvInject-plugin,我可以轻松地在正常的自由式作业中使用这个变量,但是我如何在管道中使用它?我不能将EnvInject-plugin与管道插件一起使用:( 这是获取IP的小脚本:

  • 我需要重载jenkins函数来调试IDE中的管道脚本。 我是java/groovy等的新手。我将编写几百行脚本化管道。Groovy是基于java的。由于我是新手,我更喜欢函数名完成/建议和调试功能,在这里我可以一步一步地浏览这些行并查看vars中的内容。 我用groovy插件设置了一个EclipseLuna。这实际上是有效的=)!(对于最新的eclipse,插件还没有准备好)。调试也很酷! 但是特

  • 我正试图在我的maven项目中使用Jenkins主从架构。我有windows机器上的Jenkins master和Linux机器上的slave。现在的问题是,当我运行Jenkins脚本时,它会给我一个错误,比如无法初始化git存储库,因为Jenkins正在尝试执行git。Linux从机上的exe。有人能告诉我怎么解决吗? 以下是我的Jenkins管道脚本和错误日志 错误如下

  • 问题内容: 我正在尝试在我的Jenkins版本中屏蔽密码。 我一直在尝试mask-passwords插件。 但是,这似乎不适用于我的Jenkins管道脚本,因为如果定义了密码,然后在这样的脚本中使用它,则会得到: 如果使用,则其值将解析为。 那么,如何在Jenkins管道脚本中屏蔽密码? 问题答案: 最简单的方法是使用Credentials插件。 您可以在此处定义不同类型的凭据,无论是单个密码(“