Ruby
執行配方名稱
在 Chef 中,是否可以在執行此配方時獲取配方名稱?
我想在日誌記錄/調試中添加配方名稱。就像是:
Chef:Log.info “#{recipe_name} xxxx”
您實際上可以完全按照您在問題中建議的方式獲得食譜名稱!
Chef::Log.info("I am a message from the #{recipe_name} recipe in the #{cookbook_name} cookbook.")
Opscode 站點上的Recipe DSL頁面中記錄了這種方法和其他方便的方法。
我不確定配方名稱,但您可以使用它
__FILE__
來記錄目前正在執行的 Ruby 腳本的文件名:Chef::Log.info("#{__FILE__}")
顯示為
[2013-02-13T20:39:10+00:00] INFO: /tmp/vagrant-chef-1/chef-solo-1/cookbooks/gem/recipes/default.rb
至少對於廚師獨奏。