从机上的Jenkins工作空间路径不一致
我们设置了一些共享工作空间的作业。各个分支的工作流程是:
- 构建一个名为的大型C ++项目
foo
。 - 执行几个下游测试,每个测试都使用的工作空间
foo
。
我们通过将Use custom workspace
下游作业的字段分配给构建工作区来完成此任务。
最近,我们采用了一个分支,并将其分配在Jenkins从机而非主服务器上构建。我很惊讶地发现,在主服务器上,foo
存储库被克隆到$JENKINS_JOBS_PATH/FOO/workspace/foo_repo
-在从服务器上,存储库被克隆到$JENKINS_JOBS_PATH/FOO/foo_repo
。
这是设计使然,还是我们以某种方式不一致地配置了主服务器和从服务器?
回答:
较旧的Jenkins版本将工作空间放在$ {JENKINS_HOME} / jobs / JOB /
workspace目录下。升级后,该模式将保留在Jenkins实例中。新版本将工作空间放置在$ {JENKINS_HOME} / workspace
/中。我怀疑从站不需要遵循旧模式(特别是如果它是较新的从站),因此目录在机器之间可能不一致。
您可以在Jenkins->配置Jenkins->高级中更改主服务器上工作区的位置。
我认为处理此问题的安全方法…如果要使用自定义工作区,则应将其用于所有工作,包括第一个构建大型honking c ++项目的工作。
如果您在管道中进行了所有操作,则可以在一个作业中运行所有这些操作,并且可以更好地控制所有文件的位置,并且可以选择stash
和unstash
,但是如果文件很大,则隐藏可能不是要走的路。
以上是 从机上的Jenkins工作空间路径不一致 的全部内容, 来源链接: utcz.com/qa/420792.html