CwrSync 在 Jenkins 下不起作用



我使用带有cygdrive表示法的cwrsync来表示磁盘驱动器。在通常的cmd(或批处理文件)中,它工作得很好,但当在jenkins环境中使用带有rsync调用的bat文件时(我的意思是当jenkins slave运行这个bat文件),rsync会出现以下错误:

rsync: change_dir "/cygdrive/q/build" failed: No such file or directory (2)

我应该朝哪个方向挖掘?

PS。rsync版本为3.1.1,捆绑在cygwin 1.7.32中;在windows服务器2012上。

UPD。Q与网络映射驱动器有关。

我发现windows中的网络驱动器与用户有关。只要jenkins不使用你工作的普通用户,它就看不到任何网络映射的驱动器,如果它们不是全局可见的。

所以,解决方案是自动执行命令,将网络驱动器映射为SYSTEM用户(jenkins使用):因此,我创建了bat文件,它执行以下操作:

net use Q: \hostsharename /persistent:no

并通过预定任务(由网络可用触发)从SYSTEM用户启动它——请参阅此问题。

注意:/ppersistent:yes由于某种原因不起作用。

最新更新