Jenkins管道如何更改到另一个文件夹
Posted
技术标签:
【中文标题】Jenkins管道如何更改到另一个文件夹【英文标题】:Jenkins pipeline how to change to another folder 【发布时间】:2019-02-21 15:56:52 【问题描述】:目前我正在使用 Jenkins 管道脚本。
为了运行一个命令,我需要访问其工作区目录之外的文件夹。
我尝试了sh "cd $workspace/"
,但它返回了当前工作区文件夹。
如何更改到根工作区目录,然后 cd 到另一个文件夹。请帮忙。
【问题讨论】:
【参考方案1】:您可以使用dir 步骤,例如:
dir("folder")
sh "pwd"
folder
可以是相对路径或绝对路径。
【讨论】:
但它会进入当前工作文件夹。我想切换到詹金斯工作区 你怎么回去向上? @DanDan 此dir
步骤之外的所有内容都是“向上”,另请参见 Gonzalo Robert Diaz 的答案/示例:***.com/a/59776342/757308
请注意,目录之外的目录已重置。它不像外壳中的cd directory
。
当我尝试运行 sh 'git add .'在“文件夹”中,它向我抛出了这个错误: + git add 。致命:不是 git 存储库(或任何父目录):.git【参考方案2】:
dir
包装器可以包装任何其他步骤,并且这一切都在 steps
块内工作,例如:
steps
sh "pwd"
dir('your-sub-directory')
sh "pwd"
sh "pwd"
【讨论】:
【参考方案3】:使用 WORKSPACE 环境变量更改工作区目录。
如果使用 Jenkinsfile,请使用以下代码:
dir("$env.WORKSPACE/aQA")
sh "pwd"
【讨论】:
dir('aQA')
的工作方式相同。不需要那么复杂以上是关于Jenkins管道如何更改到另一个文件夹的主要内容,如果未能解决你的问题,请参考以下文章
如何在Jenkins管道中使用自定义Dockerfile名称?
如何从 jenkins 作业的 scm 轮询中排除 jenkins 文件