我已經成功地部署了我的應用程序使用AWS OpsWorks,現在我正在嘗試實現自定義的廚師食譜,這將允許我設置bash環境變量。我已經安裝了Git repo,Cookbook正在使用OpsWorks進行更新。我使用我的開發盒上的knife命令生成了食譜,它實際上只是包含幾行代碼的recipes/default.rb
文件的目錄結構。Opsworks自定義廚師Recipies
當我嘗試做一些像下面我似乎不斷收到錯誤
node[:deploy].each do |application, deploy|
deploy = node[:deploy][application]
command "ls -la"
end
(注:LS -la是隻是爲了測試我知道這不會設置環境變量)
我得到以下錯誤:ERROR: Caught exception during execution of custom recipe: xyz-enviroment: NoMethodError - undefined method command' for #<Chef::Recipe:0x7feb59200c00> - /opt/aws/opsworks/releases/20130328224322_109/vendor/bundle/ruby/1.8/gems/chef-0.9.15.5/bin/../lib/chef/mixin/recipe_definition_dsl_core.rb:56:in method_missing
另外,如果我嘗試像
execute "setting up the enviroment" do
# TODO: Add code that does something here
end
我得到以下錯誤:
execute[setting up the enviroment] (/opt/aws/opsworks/current/site-cookbooks/xyz-enviroment/recipes/default.rb:18:in `from_file') had an error:
No such file or directory - setting up the enviroment
我是新來的廚師,所以我敢肯定有一些簡單的,我做錯了我只是一直沒能弄明白。先謝謝您的幫助。
這似乎工作。但是,我很想知道你最近是否找到了替代解決方案。有希望的是,無需重新啓動Web服務器。 – 2014-01-28 19:07:19