【问题标题】:How to obtain the folder where the Pipeline Jenkinsfile is checked out (Jenkins)如何获取 Pipeline Jenkinsfile 签出的文件夹(Jenkins)
【发布时间】:2016-10-07 02:38:17
【问题描述】:

我们有一个大项目(就规模而言),我们正在尝试使用在项目内部检查的Jenkinsfile 进行构建。

为了节省磁盘空间和构建时间,我们尽量减少副本数量,因此我们想要使用签出Jenkinsfile 的文件夹,因为这已经是一个完全克隆的存储库。

通过手动调查,我发现在作业文件夹中创建了一个workspace@script 文件夹。这是我想要获取的文件夹路径。

我本来希望pwd() 能做到这一点,但由于某种原因,它只能在节点内部工作,解析该文件夹的路径。

stage "Build"

def scriptWorkspace=??

node {
  sh """
    TERM=xterm ls --color /etc
    set

    docker run ... -v ${scriptWorkspace}:/mercurial-repository ...
  """
}

【问题讨论】:

    标签: jenkins mercurial jenkins-pipeline


    【解决方案1】:

    等待您正在使用的 SCM 实现 JENKINS-33273(我想在这种情况下是 Mercurial?需要使用该插件中的“缓存”功能),Jenkinsfile 始终在主节点,脚本本身不可用。

    【讨论】:

    • 我最终硬编码了 Jekinsfile 中的路径。我将更改为 scm 结帐,并在某个时候将源安装为卷。
    猜你喜欢
    • 2017-11-23
    • 2017-07-12
    • 2016-08-21
    • 1970-01-01
    • 2018-01-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多