4 VAGRANTFILE_API_VERSION = "2"
6 Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
7 # All Vagrant configuration is done here. The most common configuration
8 # options are documented and commented below. For a complete reference,
9 # please see the online documentation at vagrantup.com.
11 # Every Vagrant virtual environment requires a box to build off of.
12 config.vm.box = "centos-6.4-x64-vbox"
14 # The url from where the 'config.vm.box' box will be fetched if it
15 # doesn't already exist on the user's system.
16 config.vm.box_url = "http://vagrant-boxes.icinga.org/centos-64-x64-vbox4212.box"
18 # Create a forwarded port mapping which allows access to a specific port
19 # within the machine from a port on the host machine. In the example below,
20 # accessing "localhost:8080" will access port 80 on the guest machine.
21 config.vm.network :forwarded_port, guest: 80, host: 8080,
22 # Port collision auto-correction must be manually enabled for each forwarded port,
23 # since it is often surprising when it occurs and can lead the Vagrant user to
24 # think that the port wasn't properly forwarded. During a vagrant up or vagrant reload,
25 # Vagrant will output information about any collisions detections and auto corrections made,
26 # so you can take notice and act accordingly.
29 # Create a private network, which allows host-only access to the machine
30 # using a specific IP.
31 # config.vm.network :private_network, ip: "192.168.33.10"
33 # Create a public network, which generally matched to bridged network.
34 # Bridged networks make the machine appear as another physical device on
36 # config.vm.network :public_network
38 # If true, then any SSH connections made will enable agent forwarding.
39 # Default value: false
40 # config.ssh.forward_agent = true
42 # Share an additional folder to the guest VM. The first argument is
43 # the path on the host to the actual folder. The second argument is
44 # the path on the guest to mount the folder. And the optional third
45 # argument is a set of non-required options.
46 # config.vm.synced_folder "./config", "/vagrant/config"
47 # config.vm.synced_folder "./var/log", "/vagrant/var/log"
49 # Provider-specific configuration so you can fine-tune various
50 # backing providers for Vagrant. These expose provider-specific options.
51 # Example for VirtualBox:
53 # config.vm.provider :virtualbox do |vb|
54 # # Don't boot with headless mode
57 # # Use VBoxManage to customize the VM. For example to change memory:
58 # vb.customize ["modifyvm", :id, "--memory", "1024"]
61 # View the documentation for the provider you're using for more
62 # information on available options.
63 config.vm.provider "virtualbox" do |vb|
64 vb.customize ["setextradata", :id, "VBoxInternal2/SharedFoldersEnableSymlinksCreate//vagrant/config", "1"]
67 # Enable provisioning with Puppet stand alone. Puppet manifests
68 # are contained in a directory path relative to this Vagrantfile.
69 # You will need to create the manifests directory and a manifest in
70 # the file base.pp in the manifests_path directory.
72 # An example Puppet manifest to provision the message of the day:
75 # # ensure => "present",
78 # # File { owner => 0, group => 0, mode => 0644 }
80 # # file { '/etc/motd':
81 # # content => "Welcome to your Vagrant-built virtual machine!
82 # # Managed by Puppet.\n"
85 # config.vm.provision :puppet do |puppet|
86 # puppet.manifests_path = "manifests"
87 # puppet.manifest_file = "init.pp"
89 config.vm.provision :puppet do |puppet|
90 puppet.module_path = ".vagrant-puppet/modules"
91 puppet.manifests_path = ".vagrant-puppet/manifests"
92 # puppet.options = "-v -d"
93 puppet.options = "--verbose --debug"
96 config.vm.provision :shell, :path => ".vagrant-puppet/manifests/finalize.sh"