如何在Jenkins上为远程节点指定自定义路径?

loading...


1

我有一个Jenkins服务器 . 它运行在D:\ Jenkins上 .

在我的jenkins文件中,我有以下内容:

pipeline {
    agent {
        node{
            label 'windows-node'            
            customWorkspace "${JENKINS_HOME}\\${env.BRANCH_NAME}"
        }
    }
//...
}

这工作正常并尝试使用D:\ jenkins \ feature \ testbranch(通过示例) .

我现在设置了一个新节点,它只有一个磁盘,C:\

远程节点将 Remote root directory 配置为 C:/ws . 所以我期待我的输出文件夹是 C:/ws/feature/testbranch .

但似乎它试图访问远程节点上的 D:\jenkins\feature\testbranch . 如何在Jenkins文件中使用节点特定的根文件夹?

loading...

1回答

  • 0

    因此该变量似乎特定于主人 . 您可能需要一个环境变量,它指向一个在您的从属设备上一致的位置(如WKSPC_LOC),在Windows环境中设置它并使用类似customWorkspace“$ \ $ ”的内容,请注意你仍然需要在每个奴隶中设置它 . 一般来说,对于CI来说,处理不同的事情会产生问题 . 所以奴隶应该是相同的(一致的) . 截至目前,我认为没有办法为主服务器和从服务器提供不同的工作空间位置 . 在Linux中你可以使用sym链接,但我想不出一个Windows的解决方案,除了我之前提到的,但我仍然怀疑它会工作 .

评论

暂时没有评论!