Skip to content

Instantly share code, notes, and snippets.

@braidn
Created June 14, 2013 01:18
Show Gist options
  • Save braidn/5778745 to your computer and use it in GitHub Desktop.
Save braidn/5778745 to your computer and use it in GitHub Desktop.
require 'berkshelf/vagrant'
Vagrant.configure('2') do |config|
# Define VM box to use
config.vm.box = "precise64"
config.vm.box_url = "http://files.vagrantup.com/precise32.box"
# Use hostonly network with a static IP Address
config.vm.network :private_network, ip: "172.90.90.80"
# Set share folder
config.vm.synced_folder ".", "/home/vagrant/shared", :nfs => true
config.berkshelf.enabled = true
# Enable and configure chef solo
config.vm.provision :chef_solo do |chef|
chef.json = {
:misc => {
# Project name
:name => "server",
# Name of MySQL database that should be created
:db_name => "dbname",
# Optional database dump to be imported when server is provisioned
# If the file doesn't exist, it is just ignored
:db_dump => "/home/vagrant/shared/dump.sql",
# Server name and alias(es) for Apache vhost
:server_name => "server.dev",
:server_aliases => "*.server.dev",
# Document root for Apache vhost
:docroot => "/home/vagrant/shared/public_html",
},
:mysql => {
:server_root_password => 'root',
:server_repl_password => 'root',
:server_debian_password => 'root',
:bind_address => '172.90.90.80',
:allow_remote_root => true
},
:rvm => {
:rubies => [ "1.9.3-p286" ],
:default_ruby => '1.9.3',
:group_users => ["vagrant"],
:global_gems => [
{ :name => 'bundler' },
{ :name => 'rake' },
{ :name => 'chef' },
{ :name => 'passenger' }
]
}
}
chef.run_list = [
"recipe[apt]",
"recipe[build-essential]",
"recipe[xml]",
"recipe[openssh]",
"recipe[postfix]",
"recipe[openssl]",
"recipe[readline]",
"recipe[perl]",
"recipe[zlib]",
"recipe[nodejs::npm]",
"recipe[php]",
"recipe[apache2::mod_php5]",
"recipe[apache2::mod_rewrite]",
"recipe[apache2::mod_ssl]",
"recipe[mysql]",
"recipe[mysql::server]",
"recipe[memcached]",
"recipe[chef-dotdeb]",
"recipe[dotdeb]",
"recipe[dotdeb::php54]",
"recipe[rvm::vagrant]",
"recipe[rvm::user]",
"recipe[misc::packages]",
"recipe[misc::vhost]",
"recipe[misc::db]",
]
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment