ChefCookbookCopy handler
Copies your cookbooks directory to another location at the end of a Chef run. Particularly useful for multi-step AMI builds where Chef data might be on ephemeral storage between steps.
Usage
Either just pull the handler file into a files directory of one of your cookbooks, or download as a Rubygem and source it that way.
# Option 1
cookbook_file "#{node[:chef_handler][:handler_path]}/chef-handler-cookbook-copy.rb" do
source 'chef-handler-cookbook-copy.rb'
mode 00600
end
chef_handler 'ChefCookbookCopy' do
source "#{node[:chef_handler][:handler_path]}/chef-handler-cookbook-copy.rb"
action :enable
end
# Option 2
chef_gem 'chef-handler-cookbook-copy' do
action :install
end
chef_handler 'ChefCookbookCopy' do
source ::File.join(Gem.all_load_paths.grep(/chef-handler-cookbook-copy/).first,
'chef-handler-cookbook-copy.rb')
action :enable
end
Arguments
path
- Determines root for where to place cookbooks (default:/var/cache/chef/cookbooks
)mode
- Determines mode forpath
(default:0755
)always\_copy
- Determines whether to copy regardless of Chef run success (default:true
)
Author and License
Simple Finance [email protected] (##simple on Freenode) Apache License, Version 2.0