将 war 文件从工作站复制到客户端节点时出错?`

Error while copying war file from workstation to client node?`

您好,我正在使用 chef 进行部署,我在我的 chef 工作站上创建了一个 war 文件,并将其复制到 cookbook 的模板文件夹中 现在我已经写了一个简单的食谱来复制给我的客户这里是食谱

template "/opt/tomcat7/webapps/SampleProject.war" do
  source "SampleProject.war"
end

现在,如果我 运行 使用 knife ssh 从我的厨师工作站获取食谱,则无法复制 war 文件

 knife ssh 'name:staging2.akosha.com' 'chef-client' -x root -P

但如果我提供一些其他文件,如 *.txt,它会成功复制文件。

我在任何地方都没有看到这方面的参考资料,但您不应该将 template 资源用于二进制文件 - 我也遇到过同样的情况。 erb-processing 似乎翻转了一些位。

相反,请使用 cookbook_file 资源,或者更好的 remote_file,以避免使用大型工件(实际上不属于那里)污染您的 Chef 服务器。