Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save michaelklishin/1034218 to your computer and use it in GitHub Desktop.
Save michaelklishin/1034218 to your computer and use it in GitHub Desktop.
Multiple provisioners with Vagrant, it kicks ass
config.vm.provision :shell do |sh|
sh.path = "provisioners/shell/rvm_multi.sh"
end
# Enable provisioning with chef solo, specifying a cookbooks path (relative
# to this Vagrantfile), and adding some recipes and/or roles.
#
config.vm.provision :chef_solo do |chef|
chef.cookbooks_path = "vendor/cookbooks/vagrant_base"
chef.log_level = :debug
chef.add_recipe "apt"
chef.add_recipe "build-essential"
chef.add_recipe "networking_basic"
chef.add_recipe "openssl"
# for debugging. MK.
# chef.add_recipe "emacs"
# chef.add_recipe "vim"
chef.add_recipe "git"
chef.add_recipe "java::sun"
chef.add_recipe "rvm"
chef.add_recipe "rvm::multi"
chef.add_recipe "travis_build_environment"
chef.add_recipe "mysql::client"
chef.add_recipe "mysql::server"
chef.add_recipe "memcached"
chef.add_recipe "postgresql::client"
chef.add_recipe "postgresql::server"
chef.add_recipe "redis"
chef.add_recipe "rabbitmq"
# chef.add_recipe "mongodb"
# You may also specify custom JSON attributes:
chef.json.merge!(:rvm => {
:rubies => %w(ruby-1.8.7 ruby-1.9.2 jruby rbx ree ruby-1.8.7-p174 ruby-1.8.7-p249 ruby-head)
})
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment