执行shell命令框后,Jenkins的工作目录是什么?

Chr*_*ian 12 working-directory jenkins

我正在看詹金斯的工作并试图理解它.

我的Build部分中有一个Execute shell命令框:

> mkdir mydir 
> cd mydir
> 
> svn export --force https://example.com/repo/mydir .
Run Code Online (Sandbox Code Playgroud)

当Jenkins完成执行该命令后,继续进行下一个构建步骤,它的工作目录是什么? workspece-root/还是workspace-root/mydir

下一步,我有Invoke顶级Maven目标(仍然在Build部分).

我真正想知道的是:为什么要成功执行?
是因为Jenkins workspace-root/在执行shell命令框后自动移回文件夹,还是因为下一个作业是"顶级"作业,而Jenkins因此更改回workspace-root/

Sla*_*lav 18

每个build step都是Jenkins产生的独立过程.它们不共享任何内容,既不是当前目录,也不是在其中设置/更改的环境变量build step.每个新的build step开始都是通过父进程(运行Jenkins的进程)生成一个新进程

詹金斯并没有"退回" $WORKSPACE.这是詹金斯丢弃前一届会议.

  • 是的,总是`$ WORKSPACE`.大多数插件也总是相对于`$ WORKSPACE`.如果单击"执行shell"构建步骤右侧的问号图标,弹出帮助会提到它相对于`$ WORKSPACE执行 (3认同)