我有一个主Linux Jenkins服务器。我需要使用管道测试远程Windows共享上是否存在文件。
有没有简单的方法可以做到这一点?我了解到“ fileExists”仅适用于本地工作空间,所以不好。
这可能吗?还是我需要使用sh命令来做一些魔术?
谢谢!
克雷格
答案 0 :(得分:0)
如果您在Jenkins服务器上安装了LFTP,则可以尝试以下操作
$ lftp -c "open sftp://hostname_remote_windows_system ; find file_to_be_found.txt"
答案 1 :(得分:0)
请注意,fileExists()
需要在节点上执行。因此:如何将一个Windows节点连接到Linux主服务器,以进行fileExists()
,如:
def fileDoesExist
node('windows') {
fileDoesExist = fileExists(pathToFile)
}
请注意,一次访问Windows文件共享需要net use
。因此,为了使它也能在从未访问过共享的新计算机上工作,应该执行以下操作:
def fileDoesExist
node('windows') {
bat 'net use \\\\share\\path\\to\\some\\directory'
fileDoesExist = fileExists('//share/path/to/file')
}
if (fileDoesExist) {
// do someting here
}