2015-01-04 3 views
1

Я пишу рецепт повара повара, целью которого является размещение файла на сервере узлов.Как сослаться на ноты сольного сайта-файлы поваренной книги из поваренной книги повара

cookbook_file "/path/to/node/dir/file_name" do 
    source "file_name" 
    owner "ec2-user" 
    group "ec2-user" 
    end 

Я намерен позволить пользователю этой поваренной книги, чтобы поместить исходный файл в «сайт-поваренных книг» каталог его/ее нож соло репозитория.

Проблема заключается в том, что эта конфигурация выбрасывает Chef::Exceptions::FileNotFound: Cookbook 'my-cookbook' (0.1.0) does not contain a file at any of these locations: ... при развертывании knife solo cook.

Я попытался указать разные cookbook_path вариантов в файле файла соло-репозитория но не удался.

Каков правильный способ достижения этого? Или шеф-повар не работает так, и если да, то какая предпочтительная альтернативная методология? Является ли это признаком того, что я должен объединить кулинарию и нотный сольный репозиторий в единый репозиторий одного ножа?

ответ

2

cookbooks vs. site-cookbooks (и все другие варианты cookbooks_path) - вот где загрузить поваренные книги. Атрибут ресурса source ищет только вещи в кулинарной книге, а не в одном из этих путей напрямую. У вас нет явной кулинарной книги в объявлении ресурса, поэтому в кулинарной книге будет выглядеть рецепт, в котором находится код. Поскольку он является cookbook_file, он должен находиться в подпапке files/ внутри кулинарной книги.

Невозможно сказать шеф-повару или носовому соло для отправки и использования случайного сыпучего файла, как я думаю, вы предлагаете, все это основано на кулинарных книгах и других типах данных шеф-повара. Вы можете использовать ресурс remote_file и разрешить рецепт вытаскивать с указанного HTTPS-сервера.