104 lines
3.5 KiB
Plaintext
104 lines
3.5 KiB
Plaintext
# to use this vagrantfile, do either one of the following (not both):
|
|
# 1) export VAGRANT_VAGRANTFILE=Vagrantfile-aio-nova
|
|
# 2) mv Vagrantfile-aio-nova Vagrantfile
|
|
#
|
|
# and then use as normal:
|
|
# vagrant up centos65
|
|
# AND/OR
|
|
# vagrant up ubuntu1404
|
|
|
|
Vagrant.require_version ">= 1.1"
|
|
|
|
%w(vagrant-chef-zero vagrant-omnibus).each do |plugin|
|
|
unless Vagrant.has_plugin?(plugin)
|
|
fail LoadError, "#{plugin} is not installed!"
|
|
end
|
|
end
|
|
|
|
Vagrant.configure("2") do |config|
|
|
# Berkshelf plugin configuration
|
|
config.berkshelf.enabled = true
|
|
|
|
# Chef-Zero plugin configuration
|
|
config.chef_zero.enabled = true
|
|
config.chef_zero.chef_repo_path = "."
|
|
|
|
# pre-installed with berks
|
|
config.chef_zero.cookbooks = ".cookbooks"
|
|
|
|
# Omnibus plugin configuration
|
|
config.omnibus.chef_version = :latest
|
|
|
|
# OpenStack-related settings
|
|
config.vm.network "private_network", ip: "192.168.100.60"
|
|
chef_environment = "vagrant-aio-nova"
|
|
chef_run_list = [ "role[allinone-compute]","role[os-image-upload]" ]
|
|
|
|
# virtualbox provider settings
|
|
config.vm.provider "virtualbox" do |vb|
|
|
vb.customize ["modifyvm", :id, "--cpus", 2]
|
|
vb.customize ["modifyvm", :id, "--memory", 2048]
|
|
vb.customize ["modifyvm", :id, "--nicpromisc2", "allow-all"]
|
|
end
|
|
|
|
#######################
|
|
# Ubuntu 14.04 #
|
|
#######################
|
|
|
|
config.vm.define :ubuntu1404 do |ubuntu1404|
|
|
|
|
ubuntu1404.vm.hostname = "ubuntu1404"
|
|
|
|
ubuntu1404.vm.box = "opscode-ubuntu-14.04"
|
|
|
|
ubuntu1404.vm.box_url = "http://opscode-vm-bento.s3.amazonaws.com/vagrant/virtualbox/opscode_ubuntu-14.04_chef-provisionerless.box"
|
|
|
|
ubuntu1404.vm.provider "virtualbox" do |vb|
|
|
vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
|
|
end
|
|
|
|
ubuntu1404.vm.network "forwarded_port", guest: 443, host: 8443 # dashboard-ssl
|
|
ubuntu1404.vm.network "forwarded_port", guest: 4002, host: 4002 # chef-zero
|
|
ubuntu1404.vm.network "forwarded_port", guest: 5000, host: 5000 # identity-api
|
|
ubuntu1404.vm.network "forwarded_port", guest: 8773, host: 8773 # compute-ec2-api
|
|
ubuntu1404.vm.network "forwarded_port", guest: 8774, host: 8774 # compute-api
|
|
ubuntu1404.vm.network "forwarded_port", guest: 35357, host: 35357 # identity-admin-api
|
|
|
|
ubuntu1404.vm.provision :chef_zero do |chef|
|
|
chef.environment = chef_environment
|
|
chef.environments_path = './environments'
|
|
chef.roles_path = './roles'
|
|
chef.run_list = chef_run_list.unshift("recipe[apt::cacher-client]")
|
|
end
|
|
end
|
|
|
|
#######################
|
|
# Centos 6.5 #
|
|
#######################
|
|
|
|
config.vm.define :centos65 do |centos65|
|
|
|
|
centos65.vm.hostname = "centos65"
|
|
|
|
centos65.vm.box = "opscode-centos-6.5"
|
|
|
|
centos65.vm.box_url = "http://opscode-vm-bento.s3.amazonaws.com/vagrant/virtualbox/opscode_centos-6.5_chef-provisionerless.box"
|
|
|
|
centos65.vm.provider "virtualbox" do |vb|
|
|
vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
|
|
end
|
|
|
|
centos65.vm.network "forwarded_port", guest: 443, host: 9443 # dashboard-ssl
|
|
centos65.vm.network "forwarded_port", guest: 8773, host: 9773 # compute-ec2-api
|
|
centos65.vm.network "forwarded_port", guest: 8774, host: 9774 # compute-api
|
|
centos65.vm.network "forwarded_port", guest: 4001, host: 4001 # chef-zero
|
|
|
|
centos65.vm.provision :chef_zero do |chef|
|
|
chef.environment = chef_environment
|
|
chef.run_list = chef_run_list
|
|
chef.environments_path = './environments'
|
|
chef.roles_path = './roles'
|
|
end
|
|
end
|
|
end
|