复制到节点的文件为空

时间:2015-05-05 17:43:29

标签: chef chef-recipe

我正在写一个厨师食谱将文件复制到节点,文件结尾为空,但没有报告错误。

详细

我是厨师新手并尝试编写一个配方来将jar文件复制到Ubuntu框并将其作为服务运行。从ERB模板生成服务的init脚本工作正常,但尝试使用file资源复制我的jar文件只会在节点上生成一个空文件。

我使用厨房在本地虚拟机上测试食谱,而厨房在kitchen converge期间没有报告任何错误。我能够使用kitchen login登录VM,但正如我所提到的,jar文件是空的。

这是我要复制文件的块:

file "SmartTrackChecker-all.jar" do
    action :create
    path "/opt/#{project_name}/#{project_name}.jar"
    owner user_name
    group group_name
    mode 0440
    notifies 'restart', "service[#{service_name}]"
end

1 个答案:

答案 0 :(得分:3)

file资源使用通过"参数指定的内容 - 这似乎不是必需的,默认为空。那是(我猜)文件为空的原因。

您希望使用cookbook_file资源,其作用与template相同,并从cookbook的content文件夹中获取文件。

我猜奇怪的命名方案是由历史原因引起的。文件

files/