generator_files/Vagrantfile.erb in berkshelf-1.2.1 vs generator_files/Vagrantfile.erb in berkshelf-1.3.0.rc1
- old
+ new
@@ -1,81 +1,87 @@
-begin
- require 'berkshelf/vagrant'
-rescue LoadError
- puts "[WARNING] Berkshelf not found in your Vagrant's RubyGems but your Vagrantfile is attempting"
- puts "[WARNING] to require the Berkshelf Vagrant plugin! Install the Berkshelf Vagrant plugin or"
- puts "[WARNING] remove the 'require \"berkshelf/vagrant\"' line from the top of your Vagrantfile."
- puts ""
- puts "If you installed Vagrant by RubyGems:"
- puts " Install Berkshelf by running: \"gem install berkshelf\""
- puts "If you installed Vagrant by one of the pre-packaged installers:"
- puts " Install Berkshelf by running: \"vagrant gem install berkshelf\""
- puts ""
-end
+# -*- mode: ruby -*-
+# vi: set ft=ruby :
-Vagrant::Config.run do |config|
+Vagrant.configure("2") do |config|
# All Vagrant configuration is done here. The most common configuration
# options are documented and commented below. For a complete reference,
# please see the online documentation at vagrantup.com.
- # The path to the Berksfile to use with Vagrant Berkshelf
- # config.berkshelf.berksfile_path = "./Berksfile"
+ config.vm.hostname = "<%= "#{cookbook_name.gsub('_','-')}-berkshelf" %>"
- # An array of symbols representing groups of cookbook described in the Vagrantfile
- # to exclusively install and copy to Vagrant's shelf.
- # config.berkshelf.only = []
-
- # An array of symbols representing groups of cookbook described in the Vagrantfile
- # to skip installing and copying to Vagrant's shelf.
- # config.berkshelf.except = []
-
- config.vm.host_name = "<%= "#{cookbook_name}-berkshelf" %>"
-
+ # Every Vagrant virtual environment requires a box to build off of.
config.vm.box = "<%= options[:berkshelf_config].vagrant.vm.box %>"
+
+ # The url from where the 'config.vm.box' box will be fetched if it
+ # doesn't already exist on the user's system.
config.vm.box_url = "<%= options[:berkshelf_config].vagrant.vm.box_url %>"
- # Boot with a GUI so you can see the screen. (Default is headless)
- # config.vm.boot_mode = :gui
-
# Assign this VM to a host-only network IP, allowing you to access it
# via the IP. Host-only networks can talk to the host machine as well as
# any other machines on the same network, but cannot be accessed (through this
# network interface) by any external networks.
<% if options[:berkshelf_config].vagrant.vm.network.hostonly.present? -%>
- config.vm.network :hostonly, "<%= options[:berkshelf_config].vagrant.vm.network.hostonly %>"
+ config.vm.network :private_network, ip: "<%= options[:berkshelf_config].vagrant.vm.network.hostonly %>"
<% else %>
- # config.vm.network :hostonly, "33.33.33.10"
+ config.vm.network :private_network, ip: "192.168.33.10"
<% end -%>
- # Assign this VM to a bridged network, allowing you to connect directly to a
- # network using the host's network device. This makes the VM appear as another
- # physical device on your network.
+ # Create a public network, which generally matched to bridged network.
+ # Bridged networks make the machine appear as another physical device on
+ # your network.
<% if options[:berkshelf_config].vagrant.vm.network.bridged -%>
- config.vm.network :bridged
+ config.vm.network :public_network
<% else %>
- # config.vm.network :bridged
+ # config.vm.network :public_network
<% end -%>
- # Forward a port from the guest to the host, which allows for outside
- # computers to access the VM, whereas host only networking does not.
- # config.vm.forward_port 80, 8080
+ # Create a forwarded port mapping which allows access to a specific port
+ # within the machine from a port on the host machine. In the example below,
+ # accessing "localhost:8080" will access port 80 on the guest machine.
<% options[:berkshelf_config].vagrant.vm.forward_port.each do |guest, host| %>
- config.vm.forward_port <%= guest %>, <%= host %>
+ config.vm.network :forwarded_port, guest: <%= guest %>, host: <%= host %>
<% end -%>
# Share an additional folder to the guest VM. The first argument is
- # an identifier, the second is the path on the guest to mount the
- # folder, and the third is the path on the host to the actual folder.
- # config.vm.share_folder "v-data", "/vagrant_data", "../data"
+ # the path on the host to the actual folder. The second argument is
+ # the path on the guest to mount the folder. And the optional third
+ # argument is a set of non-required options.
+ # config.vm.synced_folder "../data", "/vagrant_data"
+ # Provider-specific configuration so you can fine-tune various
+ # backing providers for Vagrant. These expose provider-specific options.
+ # Example for VirtualBox:
+ #
+ # config.vm.provider :virtualbox do |vb|
+ # # Don't boot with headless mode
+ # vb.gui = true
+ #
+ # # Use VBoxManage to customize the VM. For example to change memory:
+ # vb.customize ["modifyvm", :id, "--memory", "1024"]
+ # end
+ #
+ # View the documentation for the provider you're using for more
+ # information on available options.
+
config.ssh.max_tries = 40
config.ssh.timeout = 120
+ # The path to the Berksfile to use with Vagrant Berkshelf
+ # config.berkshelf.berksfile_path = "./Berksfile"
+
+ # An array of symbols representing groups of cookbook described in the Vagrantfile
+ # to exclusively install and copy to Vagrant's shelf.
+ # config.berkshelf.only = []
+
+ # An array of symbols representing groups of cookbook described in the Vagrantfile
+ # to skip installing and copying to Vagrant's shelf.
+ # config.berkshelf.except = []
+
<% if options[:berkshelf_config].vagrant.vm.provision == "chef_client" -%>
config.vm.provision :chef_client do |chef|
- chef.chef_server_url = "<%= options[:berkshelf_config].chef.chef_server_url %>"
+ chef.chef_server_url = "<%= options[:berkshelf_config].chef.chef_server_url %>"
chef.validation_client_name = "<%= options[:berkshelf_config].chef.validation_client_name %>"
- chef.validation_key_path = "<%= options[:berkshelf_config].chef.validation_key_path %>"
+ chef.validation_key_path = "<%= options[:berkshelf_config].chef.validation_key_path %>"
chef.run_list = [
"recipe[<%= cookbook_name %>::default]"
]
end