Ruby 命令“远程目录”在执行任务时失败

Ruby 命令“远程目录”在执行任务时失败,ruby,chef-infra,chef-solo,Ruby,Chef Infra,Chef Solo,我正在尝试使用以下代码将文件夹从FTP服务器复制到本地PC: src = "http://moo-repo.wdf.ETC.corp:8080/static/lit/ETC/MDMInternalTools/" remote_directory "c:\\Users\\Desktop" do source src rights :full_control, 'everyone' action :create end 有时会出现以下错误: FileNotFound: cookboo

我正在尝试使用以下代码将文件夹从FTP服务器复制到本地PC:

src = "http://moo-repo.wdf.ETC.corp:8080/static/lit/ETC/MDMInternalTools/"

remote_directory "c:\\Users\\Desktop" do
  source src
  rights :full_control, 'everyone'
  action :create
end
有时会出现以下错误:

FileNotFound: cookbook litc-mdmfiles has no directory
files/default/http://moo
repo.wdf.ETC.corp:8080/static/lit/ETC/MDMInternalTools/
有时我会这样:

Chef::Exceptions::InsufficientPermissions: Cannot create 
remote_directory[C:\Users\public\Desktop

有人能提供建议吗?

远程目录资源并不像您想象的那样。它用于从烹饪书中的
files/
目录进行复制,就像
cookbook\u file
用于单个文件一样。这是一个常见的错误,因为
remote_file
从HTTP(或类似)源下载单个文件。无法通过HTTP下载“目录”,因为它不支持通用的文件夹式语义。您提到您正在从FTP服务器进行传输(虽然示例代码使用HTTP),如果是这样,您可以找到或制作一个通过FTP进行同步的资源,但我不知道有哪一个是一次性的。

请注意文件路径中的引号和反斜杠,尤其是在与windows对话时。