Skip to content

Instantly share code, notes, and snippets.

@fujin
Last active December 15, 2015 19:59
Show Gist options
  • Save fujin/5315080 to your computer and use it in GitHub Desktop.
Save fujin/5315080 to your computer and use it in GitHub Desktop.
Berkshelf site-cookbooks walker
# -*- mode: ruby -*-
site :opscode
cookbook "chef-server", github: 'opscode-cookbooks/chef-server'
cookbook "discovery"
%w[builder fpm-tng gpg].map do |cb|
cookbook cb, github: "hw-cookbooks/#{cb}", branch: 'master'
end
%w[pkg-build repository].map do |cb|
cookbook cb, github: "hw-cookbooks/#{cb}", branch: 'develop'
end
upstream_cookbooks = [
'apache2',
'apt',
'aws',
'build-essential',
'database',
'deb_pkg_unautostart',
'mysql',
'nginx',
'nodejs',
'openssl',
'postgresql',
'python',
'xfs'
].each do |up_cb|
cookbook up_cb
end
current_dir = File.dirname(__FILE__)
site_cookbooks = File.join(current_dir, "site-cookbooks")
local_cookbooks = Dir[File.join(site_cookbooks,'*','metadata.rb')].map do |cookbook_metadata|
File.dirname(cookbook_metadata).split(File::SEPARATOR).last
end.each do |cookbook|
cookbook cookbook, path: File.expand_path(File.join(site_cookbooks, cookbook))
end
# -*- mode: ruby -*-
site :opscode
current_dir = File.dirname(__FILE__)
site_cookbooks = File.join(current_dir, 'site-cookbooks')
Dir[File.join(site_cookbooks, '*', 'metadata.rb')].map do |cookbook_metadata|
cookbook_name = File.dirname(cookbook_metadata).split(File::SEPARATOR).last
cookbook cookbook_name, path: File.join(site_cookbooks, cookbook_name)
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment