vagrant-lxc 0.0.1 → 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +14 -6
- data/Gemfile +19 -14
- data/Gemfile.lock +10 -5
- data/README.md +18 -42
- data/development/Vagrantfile.1.0 +3 -2
- data/lib/vagrant-lxc/version.rb +1 -1
- data/lib/vagrant-lxc.rb +0 -2
- data/vagrant-lxc.gemspec +1 -14
- metadata +7 -540
- data/.gitmodules +0 -3
- data/bin/vagrant-lxc +0 -9
- data/lib/vendored_vagrant.rb +0 -9
- data/vendor/.gitkeep +0 -0
- data/vendor/vagrant/.gitignore +0 -31
- data/vendor/vagrant/.travis.yml +0 -7
- data/vendor/vagrant/.yardopts +0 -1
- data/vendor/vagrant/CHANGELOG.md +0 -803
- data/vendor/vagrant/Gemfile +0 -3
- data/vendor/vagrant/LICENSE +0 -21
- data/vendor/vagrant/README.md +0 -89
- data/vendor/vagrant/Rakefile +0 -18
- data/vendor/vagrant/bin/vagrant +0 -84
- data/vendor/vagrant/config/default.rb +0 -35
- data/vendor/vagrant/contrib/README.md +0 -12
- data/vendor/vagrant/contrib/bash/completion.sh +0 -3
- data/vendor/vagrant/contrib/emacs/vagrant.el +0 -8
- data/vendor/vagrant/contrib/vim/vagrantfile.vim +0 -9
- data/vendor/vagrant/keys/README.md +0 -17
- data/vendor/vagrant/keys/vagrant +0 -27
- data/vendor/vagrant/keys/vagrant.pub +0 -1
- data/vendor/vagrant/lib/vagrant/action/builder.rb +0 -154
- data/vendor/vagrant/lib/vagrant/action/builtin/box_add.rb +0 -79
- data/vendor/vagrant/lib/vagrant/action/builtin/call.rb +0 -67
- data/vendor/vagrant/lib/vagrant/action/builtin/config_validate.rb +0 -30
- data/vendor/vagrant/lib/vagrant/action/builtin/confirm.rb +0 -38
- data/vendor/vagrant/lib/vagrant/action/builtin/env_set.rb +0 -24
- data/vendor/vagrant/lib/vagrant/action/builtin/graceful_halt.rb +0 -73
- data/vendor/vagrant/lib/vagrant/action/builtin/handle_box_url.rb +0 -43
- data/vendor/vagrant/lib/vagrant/action/builtin/handle_forwarded_port_collisions.rb +0 -117
- data/vendor/vagrant/lib/vagrant/action/builtin/lock.rb +0 -57
- data/vendor/vagrant/lib/vagrant/action/builtin/nfs.rb +0 -117
- data/vendor/vagrant/lib/vagrant/action/builtin/provision.rb +0 -70
- data/vendor/vagrant/lib/vagrant/action/builtin/set_hostname.rb +0 -27
- data/vendor/vagrant/lib/vagrant/action/builtin/ssh_exec.rb +0 -42
- data/vendor/vagrant/lib/vagrant/action/builtin/ssh_run.rb +0 -43
- data/vendor/vagrant/lib/vagrant/action/general/package.rb +0 -102
- data/vendor/vagrant/lib/vagrant/action/hook.rb +0 -103
- data/vendor/vagrant/lib/vagrant/action/runner.rb +0 -69
- data/vendor/vagrant/lib/vagrant/action/warden.rb +0 -103
- data/vendor/vagrant/lib/vagrant/action.rb +0 -42
- data/vendor/vagrant/lib/vagrant/box.rb +0 -93
- data/vendor/vagrant/lib/vagrant/box_collection.rb +0 -315
- data/vendor/vagrant/lib/vagrant/cli.rb +0 -82
- data/vendor/vagrant/lib/vagrant/config/container.rb +0 -37
- data/vendor/vagrant/lib/vagrant/config/loader.rb +0 -222
- data/vendor/vagrant/lib/vagrant/config/v1/dummy_config.rb +0 -13
- data/vendor/vagrant/lib/vagrant/config/v1/loader.rb +0 -105
- data/vendor/vagrant/lib/vagrant/config/v1/root.rb +0 -60
- data/vendor/vagrant/lib/vagrant/config/v1.rb +0 -9
- data/vendor/vagrant/lib/vagrant/config/v2/dummy_config.rb +0 -13
- data/vendor/vagrant/lib/vagrant/config/v2/loader.rb +0 -141
- data/vendor/vagrant/lib/vagrant/config/v2/root.rb +0 -105
- data/vendor/vagrant/lib/vagrant/config/v2/util.rb +0 -21
- data/vendor/vagrant/lib/vagrant/config/v2.rb +0 -9
- data/vendor/vagrant/lib/vagrant/config/version_base.rb +0 -80
- data/vendor/vagrant/lib/vagrant/config.rb +0 -63
- data/vendor/vagrant/lib/vagrant/downloaders/base.rb +0 -22
- data/vendor/vagrant/lib/vagrant/downloaders/file.rb +0 -28
- data/vendor/vagrant/lib/vagrant/downloaders/http.rb +0 -116
- data/vendor/vagrant/lib/vagrant/downloaders.rb +0 -7
- data/vendor/vagrant/lib/vagrant/environment.rb +0 -729
- data/vendor/vagrant/lib/vagrant/errors.rb +0 -486
- data/vendor/vagrant/lib/vagrant/hosts.rb +0 -28
- data/vendor/vagrant/lib/vagrant/machine.rb +0 -325
- data/vendor/vagrant/lib/vagrant/machine_state.rb +0 -45
- data/vendor/vagrant/lib/vagrant/plugin/v1/command.rb +0 -169
- data/vendor/vagrant/lib/vagrant/plugin/v1/communicator.rb +0 -98
- data/vendor/vagrant/lib/vagrant/plugin/v1/config.rb +0 -112
- data/vendor/vagrant/lib/vagrant/plugin/v1/errors.rb +0 -15
- data/vendor/vagrant/lib/vagrant/plugin/v1/guest.rb +0 -92
- data/vendor/vagrant/lib/vagrant/plugin/v1/host.rb +0 -66
- data/vendor/vagrant/lib/vagrant/plugin/v1/manager.rb +0 -131
- data/vendor/vagrant/lib/vagrant/plugin/v1/plugin.rb +0 -229
- data/vendor/vagrant/lib/vagrant/plugin/v1/provider.rb +0 -68
- data/vendor/vagrant/lib/vagrant/plugin/v1/provisioner.rb +0 -50
- data/vendor/vagrant/lib/vagrant/plugin/v1.rb +0 -19
- data/vendor/vagrant/lib/vagrant/plugin/v2/command.rb +0 -234
- data/vendor/vagrant/lib/vagrant/plugin/v2/communicator.rb +0 -98
- data/vendor/vagrant/lib/vagrant/plugin/v2/components.rb +0 -29
- data/vendor/vagrant/lib/vagrant/plugin/v2/config.rb +0 -101
- data/vendor/vagrant/lib/vagrant/plugin/v2/errors.rb +0 -15
- data/vendor/vagrant/lib/vagrant/plugin/v2/guest.rb +0 -92
- data/vendor/vagrant/lib/vagrant/plugin/v2/host.rb +0 -66
- data/vendor/vagrant/lib/vagrant/plugin/v2/manager.rb +0 -158
- data/vendor/vagrant/lib/vagrant/plugin/v2/plugin.rb +0 -217
- data/vendor/vagrant/lib/vagrant/plugin/v2/provider.rb +0 -69
- data/vendor/vagrant/lib/vagrant/plugin/v2/provisioner.rb +0 -47
- data/vendor/vagrant/lib/vagrant/plugin/v2.rb +0 -22
- data/vendor/vagrant/lib/vagrant/plugin.rb +0 -6
- data/vendor/vagrant/lib/vagrant/registry.rb +0 -78
- data/vendor/vagrant/lib/vagrant/ssh.rb +0 -132
- data/vendor/vagrant/lib/vagrant/test_helpers.rb +0 -154
- data/vendor/vagrant/lib/vagrant/ui.rb +0 -170
- data/vendor/vagrant/lib/vagrant/util/ansi_escape_code_remover.rb +0 -34
- data/vendor/vagrant/lib/vagrant/util/busy.rb +0 -59
- data/vendor/vagrant/lib/vagrant/util/counter.rb +0 -24
- data/vendor/vagrant/lib/vagrant/util/file_checksum.rb +0 -38
- data/vendor/vagrant/lib/vagrant/util/file_mode.rb +0 -12
- data/vendor/vagrant/lib/vagrant/util/hash_with_indifferent_access.rb +0 -63
- data/vendor/vagrant/lib/vagrant/util/is_port_open.rb +0 -38
- data/vendor/vagrant/lib/vagrant/util/line_ending_helpers.rb +0 -14
- data/vendor/vagrant/lib/vagrant/util/network_ip.rb +0 -28
- data/vendor/vagrant/lib/vagrant/util/platform.rb +0 -68
- data/vendor/vagrant/lib/vagrant/util/retryable.rb +0 -31
- data/vendor/vagrant/lib/vagrant/util/safe_exec.rb +0 -36
- data/vendor/vagrant/lib/vagrant/util/safe_puts.rb +0 -31
- data/vendor/vagrant/lib/vagrant/util/scoped_hash_override.rb +0 -45
- data/vendor/vagrant/lib/vagrant/util/ssh.rb +0 -126
- data/vendor/vagrant/lib/vagrant/util/stacked_proc_runner.rb +0 -35
- data/vendor/vagrant/lib/vagrant/util/string_block_editor.rb +0 -75
- data/vendor/vagrant/lib/vagrant/util/subprocess.rb +0 -270
- data/vendor/vagrant/lib/vagrant/util/template_renderer.rb +0 -83
- data/vendor/vagrant/lib/vagrant/util/which.rb +0 -43
- data/vendor/vagrant/lib/vagrant/util.rb +0 -12
- data/vendor/vagrant/lib/vagrant/version.rb +0 -6
- data/vendor/vagrant/lib/vagrant.rb +0 -251
- data/vendor/vagrant/plugins/README.md +0 -5
- data/vendor/vagrant/plugins/commands/box/command/add.rb +0 -52
- data/vendor/vagrant/plugins/commands/box/command/list.rb +0 -41
- data/vendor/vagrant/plugins/commands/box/command/remove.rb +0 -37
- data/vendor/vagrant/plugins/commands/box/command/repackage.rb +0 -43
- data/vendor/vagrant/plugins/commands/box/command/root.rb +0 -75
- data/vendor/vagrant/plugins/commands/box/plugin.rb +0 -15
- data/vendor/vagrant/plugins/commands/destroy/command.rb +0 -31
- data/vendor/vagrant/plugins/commands/destroy/plugin.rb +0 -18
- data/vendor/vagrant/plugins/commands/halt/command.rb +0 -33
- data/vendor/vagrant/plugins/commands/halt/plugin.rb +0 -18
- data/vendor/vagrant/plugins/commands/init/command.rb +0 -40
- data/vendor/vagrant/plugins/commands/init/plugin.rb +0 -18
- data/vendor/vagrant/plugins/commands/package/command.rb +0 -78
- data/vendor/vagrant/plugins/commands/package/plugin.rb +0 -18
- data/vendor/vagrant/plugins/commands/plugin/action/bundler_check.rb +0 -25
- data/vendor/vagrant/plugins/commands/plugin/action/install_gem.rb +0 -70
- data/vendor/vagrant/plugins/commands/plugin/action/license_plugin.rb +0 -54
- data/vendor/vagrant/plugins/commands/plugin/action/list_plugins.rb +0 -54
- data/vendor/vagrant/plugins/commands/plugin/action/prune_gems.rb +0 -149
- data/vendor/vagrant/plugins/commands/plugin/action/uninstall_plugin.rb +0 -23
- data/vendor/vagrant/plugins/commands/plugin/action.rb +0 -52
- data/vendor/vagrant/plugins/commands/plugin/command/base.rb +0 -22
- data/vendor/vagrant/plugins/commands/plugin/command/install.rb +0 -39
- data/vendor/vagrant/plugins/commands/plugin/command/license.rb +0 -31
- data/vendor/vagrant/plugins/commands/plugin/command/list.rb +0 -28
- data/vendor/vagrant/plugins/commands/plugin/command/root.rb +0 -75
- data/vendor/vagrant/plugins/commands/plugin/command/uninstall.rb +0 -28
- data/vendor/vagrant/plugins/commands/plugin/gem_helper.rb +0 -74
- data/vendor/vagrant/plugins/commands/plugin/plugin.rb +0 -22
- data/vendor/vagrant/plugins/commands/plugin/state_file.rb +0 -57
- data/vendor/vagrant/plugins/commands/provision/command.rb +0 -34
- data/vendor/vagrant/plugins/commands/provision/plugin.rb +0 -18
- data/vendor/vagrant/plugins/commands/reload/command.rb +0 -37
- data/vendor/vagrant/plugins/commands/reload/plugin.rb +0 -18
- data/vendor/vagrant/plugins/commands/resume/command.rb +0 -25
- data/vendor/vagrant/plugins/commands/resume/plugin.rb +0 -17
- data/vendor/vagrant/plugins/commands/ssh/command.rb +0 -66
- data/vendor/vagrant/plugins/commands/ssh/plugin.rb +0 -17
- data/vendor/vagrant/plugins/commands/ssh_config/command.rb +0 -49
- data/vendor/vagrant/plugins/commands/ssh_config/plugin.rb +0 -18
- data/vendor/vagrant/plugins/commands/status/command.rb +0 -39
- data/vendor/vagrant/plugins/commands/status/plugin.rb +0 -18
- data/vendor/vagrant/plugins/commands/suspend/command.rb +0 -25
- data/vendor/vagrant/plugins/commands/suspend/plugin.rb +0 -18
- data/vendor/vagrant/plugins/commands/up/command.rb +0 -45
- data/vendor/vagrant/plugins/commands/up/plugin.rb +0 -17
- data/vendor/vagrant/plugins/commands/up/start_mixins.rb +0 -26
- data/vendor/vagrant/plugins/communicators/ssh/communicator.rb +0 -317
- data/vendor/vagrant/plugins/communicators/ssh/plugin.rb +0 -19
- data/vendor/vagrant/plugins/guests/arch/guest.rb +0 -41
- data/vendor/vagrant/plugins/guests/arch/plugin.rb +0 -15
- data/vendor/vagrant/plugins/guests/debian/guest.rb +0 -72
- data/vendor/vagrant/plugins/guests/debian/plugin.rb +0 -15
- data/vendor/vagrant/plugins/guests/fedora/guest.rb +0 -71
- data/vendor/vagrant/plugins/guests/fedora/plugin.rb +0 -15
- data/vendor/vagrant/plugins/guests/freebsd/config.rb +0 -13
- data/vendor/vagrant/plugins/guests/freebsd/guest.rb +0 -70
- data/vendor/vagrant/plugins/guests/freebsd/plugin.rb +0 -20
- data/vendor/vagrant/plugins/guests/gentoo/guest.rb +0 -51
- data/vendor/vagrant/plugins/guests/gentoo/plugin.rb +0 -15
- data/vendor/vagrant/plugins/guests/linux/config.rb +0 -13
- data/vendor/vagrant/plugins/guests/linux/guest.rb +0 -118
- data/vendor/vagrant/plugins/guests/linux/plugin.rb +0 -20
- data/vendor/vagrant/plugins/guests/openbsd/guest.rb +0 -13
- data/vendor/vagrant/plugins/guests/openbsd/plugin.rb +0 -15
- data/vendor/vagrant/plugins/guests/redhat/guest.rb +0 -74
- data/vendor/vagrant/plugins/guests/redhat/plugin.rb +0 -15
- data/vendor/vagrant/plugins/guests/solaris/config.rb +0 -18
- data/vendor/vagrant/plugins/guests/solaris/guest.rb +0 -73
- data/vendor/vagrant/plugins/guests/solaris/plugin.rb +0 -20
- data/vendor/vagrant/plugins/guests/suse/guest.rb +0 -24
- data/vendor/vagrant/plugins/guests/suse/plugin.rb +0 -15
- data/vendor/vagrant/plugins/guests/ubuntu/guest.rb +0 -44
- data/vendor/vagrant/plugins/guests/ubuntu/plugin.rb +0 -15
- data/vendor/vagrant/plugins/hosts/arch/host.rb +0 -68
- data/vendor/vagrant/plugins/hosts/arch/plugin.rb +0 -15
- data/vendor/vagrant/plugins/hosts/bsd/host.rb +0 -102
- data/vendor/vagrant/plugins/hosts/bsd/plugin.rb +0 -15
- data/vendor/vagrant/plugins/hosts/fedora/host.rb +0 -51
- data/vendor/vagrant/plugins/hosts/fedora/plugin.rb +0 -15
- data/vendor/vagrant/plugins/hosts/freebsd/host.rb +0 -43
- data/vendor/vagrant/plugins/hosts/freebsd/plugin.rb +0 -15
- data/vendor/vagrant/plugins/hosts/gentoo/host.rb +0 -24
- data/vendor/vagrant/plugins/hosts/gentoo/plugin.rb +0 -15
- data/vendor/vagrant/plugins/hosts/linux/host.rb +0 -95
- data/vendor/vagrant/plugins/hosts/linux/plugin.rb +0 -15
- data/vendor/vagrant/plugins/hosts/opensuse/host.rb +0 -34
- data/vendor/vagrant/plugins/hosts/opensuse/plugin.rb +0 -15
- data/vendor/vagrant/plugins/hosts/windows/host.rb +0 -17
- data/vendor/vagrant/plugins/hosts/windows/plugin.rb +0 -15
- data/vendor/vagrant/plugins/kernel_v1/config/nfs.rb +0 -20
- data/vendor/vagrant/plugins/kernel_v1/config/package.rb +0 -17
- data/vendor/vagrant/plugins/kernel_v1/config/ssh.rb +0 -46
- data/vendor/vagrant/plugins/kernel_v1/config/vagrant.rb +0 -31
- data/vendor/vagrant/plugins/kernel_v1/config/vm.rb +0 -184
- data/vendor/vagrant/plugins/kernel_v1/plugin.rb +0 -44
- data/vendor/vagrant/plugins/kernel_v2/config/nfs.rb +0 -10
- data/vendor/vagrant/plugins/kernel_v2/config/package.rb +0 -9
- data/vendor/vagrant/plugins/kernel_v2/config/ssh.rb +0 -35
- data/vendor/vagrant/plugins/kernel_v2/config/vagrant.rb +0 -9
- data/vendor/vagrant/plugins/kernel_v2/config/vm.rb +0 -314
- data/vendor/vagrant/plugins/kernel_v2/config/vm_provisioner.rb +0 -40
- data/vendor/vagrant/plugins/kernel_v2/config/vm_subvm.rb +0 -30
- data/vendor/vagrant/plugins/kernel_v2/plugin.rb +0 -44
- data/vendor/vagrant/plugins/providers/virtualbox/action/boot.rb +0 -49
- data/vendor/vagrant/plugins/providers/virtualbox/action/check_accessible.rb +0 -23
- data/vendor/vagrant/plugins/providers/virtualbox/action/check_created.rb +0 -21
- data/vendor/vagrant/plugins/providers/virtualbox/action/check_guest_additions.rb +0 -45
- data/vendor/vagrant/plugins/providers/virtualbox/action/check_running.rb +0 -21
- data/vendor/vagrant/plugins/providers/virtualbox/action/check_virtualbox.rb +0 -22
- data/vendor/vagrant/plugins/providers/virtualbox/action/clean_machine_folder.rb +0 -43
- data/vendor/vagrant/plugins/providers/virtualbox/action/clear_forwarded_ports.rb +0 -18
- data/vendor/vagrant/plugins/providers/virtualbox/action/clear_network_interfaces.rb +0 -31
- data/vendor/vagrant/plugins/providers/virtualbox/action/clear_shared_folders.rb +0 -17
- data/vendor/vagrant/plugins/providers/virtualbox/action/created.rb +0 -20
- data/vendor/vagrant/plugins/providers/virtualbox/action/customize.rb +0 -36
- data/vendor/vagrant/plugins/providers/virtualbox/action/destroy.rb +0 -19
- data/vendor/vagrant/plugins/providers/virtualbox/action/destroy_confirm.rb +0 -17
- data/vendor/vagrant/plugins/providers/virtualbox/action/destroy_unused_network_interfaces.rb +0 -16
- data/vendor/vagrant/plugins/providers/virtualbox/action/discard_state.rb +0 -20
- data/vendor/vagrant/plugins/providers/virtualbox/action/export.rb +0 -57
- data/vendor/vagrant/plugins/providers/virtualbox/action/forced_halt.rb +0 -25
- data/vendor/vagrant/plugins/providers/virtualbox/action/forward_ports.rb +0 -79
- data/vendor/vagrant/plugins/providers/virtualbox/action/import.rb +0 -51
- data/vendor/vagrant/plugins/providers/virtualbox/action/is_paused.rb +0 -20
- data/vendor/vagrant/plugins/providers/virtualbox/action/is_running.rb +0 -20
- data/vendor/vagrant/plugins/providers/virtualbox/action/is_saved.rb +0 -20
- data/vendor/vagrant/plugins/providers/virtualbox/action/match_mac_address.rb +0 -21
- data/vendor/vagrant/plugins/providers/virtualbox/action/message_not_created.rb +0 -16
- data/vendor/vagrant/plugins/providers/virtualbox/action/message_not_running.rb +0 -16
- data/vendor/vagrant/plugins/providers/virtualbox/action/message_will_not_destroy.rb +0 -17
- data/vendor/vagrant/plugins/providers/virtualbox/action/network.rb +0 -366
- data/vendor/vagrant/plugins/providers/virtualbox/action/package.rb +0 -20
- data/vendor/vagrant/plugins/providers/virtualbox/action/package_vagrantfile.rb +0 -33
- data/vendor/vagrant/plugins/providers/virtualbox/action/prepare_forwarded_port_collision_params.rb +0 -35
- data/vendor/vagrant/plugins/providers/virtualbox/action/prepare_nfs_settings.rb +0 -51
- data/vendor/vagrant/plugins/providers/virtualbox/action/prune_nfs_exports.rb +0 -20
- data/vendor/vagrant/plugins/providers/virtualbox/action/resume.rb +0 -25
- data/vendor/vagrant/plugins/providers/virtualbox/action/sane_defaults.rb +0 -87
- data/vendor/vagrant/plugins/providers/virtualbox/action/set_name.rb +0 -40
- data/vendor/vagrant/plugins/providers/virtualbox/action/setup_package_files.rb +0 -51
- data/vendor/vagrant/plugins/providers/virtualbox/action/share_folders.rb +0 -113
- data/vendor/vagrant/plugins/providers/virtualbox/action/suspend.rb +0 -20
- data/vendor/vagrant/plugins/providers/virtualbox/action.rb +0 -308
- data/vendor/vagrant/plugins/providers/virtualbox/config.rb +0 -82
- data/vendor/vagrant/plugins/providers/virtualbox/driver/base.rb +0 -344
- data/vendor/vagrant/plugins/providers/virtualbox/driver/meta.rb +0 -141
- data/vendor/vagrant/plugins/providers/virtualbox/driver/version_4_0.rb +0 -481
- data/vendor/vagrant/plugins/providers/virtualbox/driver/version_4_1.rb +0 -481
- data/vendor/vagrant/plugins/providers/virtualbox/driver/version_4_2.rb +0 -471
- data/vendor/vagrant/plugins/providers/virtualbox/model/forwarded_port.rb +0 -58
- data/vendor/vagrant/plugins/providers/virtualbox/plugin.rb +0 -42
- data/vendor/vagrant/plugins/providers/virtualbox/provider.rb +0 -92
- data/vendor/vagrant/plugins/providers/virtualbox/util/compile_forwarded_ports.rb +0 -31
- data/vendor/vagrant/plugins/provisioners/chef/config/base.rb +0 -65
- data/vendor/vagrant/plugins/provisioners/chef/config/chef_client.rb +0 -39
- data/vendor/vagrant/plugins/provisioners/chef/config/chef_solo.rb +0 -87
- data/vendor/vagrant/plugins/provisioners/chef/plugin.rb +0 -33
- data/vendor/vagrant/plugins/provisioners/chef/provisioner/base.rb +0 -91
- data/vendor/vagrant/plugins/provisioners/chef/provisioner/chef_client.rb +0 -103
- data/vendor/vagrant/plugins/provisioners/chef/provisioner/chef_solo.rb +0 -182
- data/vendor/vagrant/plugins/provisioners/puppet/config/puppet.rb +0 -70
- data/vendor/vagrant/plugins/provisioners/puppet/config/puppet_server.rb +0 -16
- data/vendor/vagrant/plugins/provisioners/puppet/plugin.rb +0 -33
- data/vendor/vagrant/plugins/provisioners/puppet/provisioner/puppet.rb +0 -110
- data/vendor/vagrant/plugins/provisioners/puppet/provisioner/puppet_server.rb +0 -67
- data/vendor/vagrant/plugins/provisioners/shell/config.rb +0 -46
- data/vendor/vagrant/plugins/provisioners/shell/plugin.rb +0 -23
- data/vendor/vagrant/plugins/provisioners/shell/provisioner.rb +0 -66
- data/vendor/vagrant/tasks/acceptance.rake +0 -113
- data/vendor/vagrant/tasks/bundler.rake +0 -3
- data/vendor/vagrant/tasks/test.rake +0 -20
- data/vendor/vagrant/templates/commands/init/Vagrantfile.erb +0 -111
- data/vendor/vagrant/templates/commands/ssh_config/config.erb +0 -16
- data/vendor/vagrant/templates/config/messages.erb +0 -14
- data/vendor/vagrant/templates/config/validation_failed.erb +0 -7
- data/vendor/vagrant/templates/guests/arch/network_dhcp.erb +0 -4
- data/vendor/vagrant/templates/guests/arch/network_static.erb +0 -6
- data/vendor/vagrant/templates/guests/debian/network_dhcp.erb +0 -11
- data/vendor/vagrant/templates/guests/debian/network_static.erb +0 -7
- data/vendor/vagrant/templates/guests/fedora/network_dhcp.erb +0 -6
- data/vendor/vagrant/templates/guests/fedora/network_static.erb +0 -13
- data/vendor/vagrant/templates/guests/freebsd/network_dhcp.erb +0 -3
- data/vendor/vagrant/templates/guests/freebsd/network_static.erb +0 -3
- data/vendor/vagrant/templates/guests/gentoo/network_dhcp.erb +0 -4
- data/vendor/vagrant/templates/guests/gentoo/network_static.erb +0 -4
- data/vendor/vagrant/templates/guests/redhat/network_dhcp.erb +0 -6
- data/vendor/vagrant/templates/guests/redhat/network_static.erb +0 -7
- data/vendor/vagrant/templates/locales/en.yml +0 -993
- data/vendor/vagrant/templates/nfs/exports.erb +0 -5
- data/vendor/vagrant/templates/nfs/exports_freebsd.erb +0 -5
- data/vendor/vagrant/templates/nfs/exports_linux.erb +0 -5
- data/vendor/vagrant/templates/package_Vagrantfile.erb +0 -11
- data/vendor/vagrant/templates/provisioners/chef_client/client.erb +0 -32
- data/vendor/vagrant/templates/provisioners/chef_solo/solo.erb +0 -25
- data/vendor/vagrant/templates/rgloader.rb +0 -9
- data/vendor/vagrant/test/acceptance/base.rb +0 -48
- data/vendor/vagrant/test/acceptance/box_test.rb +0 -99
- data/vendor/vagrant/test/acceptance/destroy_test.rb +0 -37
- data/vendor/vagrant/test/acceptance/halt_test.rb +0 -72
- data/vendor/vagrant/test/acceptance/init_test.rb +0 -33
- data/vendor/vagrant/test/acceptance/networking/host_only_test.rb +0 -37
- data/vendor/vagrant/test/acceptance/networking/port_forward_test.rb +0 -125
- data/vendor/vagrant/test/acceptance/package_test.rb +0 -46
- data/vendor/vagrant/test/acceptance/provisioning/basic_test.rb +0 -61
- data/vendor/vagrant/test/acceptance/provisioning/chef_solo_test.rb +0 -37
- data/vendor/vagrant/test/acceptance/provisioning/shell_test.rb +0 -53
- data/vendor/vagrant/test/acceptance/resume_test.rb +0 -17
- data/vendor/vagrant/test/acceptance/shared_folders_test.rb +0 -84
- data/vendor/vagrant/test/acceptance/skeletons/chef_solo_basic/README.md +0 -3
- data/vendor/vagrant/test/acceptance/skeletons/chef_solo_basic/cookbooks/basic/recipes/default.rb +0 -5
- data/vendor/vagrant/test/acceptance/skeletons/chef_solo_json/README.md +0 -3
- data/vendor/vagrant/test/acceptance/skeletons/chef_solo_json/cookbooks/basic/recipes/default.rb +0 -6
- data/vendor/vagrant/test/acceptance/skeletons/provisioner_multi/README.md +0 -3
- data/vendor/vagrant/test/acceptance/skeletons/provisioner_multi/cookbooks/basic/recipes/default.rb +0 -5
- data/vendor/vagrant/test/acceptance/ssh_test.rb +0 -46
- data/vendor/vagrant/test/acceptance/support/config.rb +0 -42
- data/vendor/vagrant/test/acceptance/support/isolated_environment.rb +0 -118
- data/vendor/vagrant/test/acceptance/support/matchers/have_color.rb +0 -9
- data/vendor/vagrant/test/acceptance/support/matchers/match_output.rb +0 -14
- data/vendor/vagrant/test/acceptance/support/matchers/succeed.rb +0 -14
- data/vendor/vagrant/test/acceptance/support/network_tests.rb +0 -29
- data/vendor/vagrant/test/acceptance/support/output.rb +0 -95
- data/vendor/vagrant/test/acceptance/support/shared/base_context.rb +0 -72
- data/vendor/vagrant/test/acceptance/support/shared/command_examples.rb +0 -33
- data/vendor/vagrant/test/acceptance/support/virtualbox.rb +0 -36
- data/vendor/vagrant/test/acceptance/suspend_test.rb +0 -56
- data/vendor/vagrant/test/acceptance/up_basic_test.rb +0 -33
- data/vendor/vagrant/test/acceptance/up_with_box_url.rb +0 -40
- data/vendor/vagrant/test/acceptance/vagrant_test.rb +0 -47
- data/vendor/vagrant/test/acceptance/version_test.rb +0 -15
- data/vendor/vagrant/test/config/acceptance_boxes.yml +0 -7
- data/vendor/vagrant/test/support/isolated_environment.rb +0 -46
- data/vendor/vagrant/test/support/tempdir.rb +0 -43
- data/vendor/vagrant/test/unit/base.rb +0 -27
- data/vendor/vagrant/test/unit/support/dummy_provider.rb +0 -16
- data/vendor/vagrant/test/unit/support/isolated_environment.rb +0 -177
- data/vendor/vagrant/test/unit/support/shared/base_context.rb +0 -104
- data/vendor/vagrant/test/unit/vagrant/action/builder_test.rb +0 -196
- data/vendor/vagrant/test/unit/vagrant/action/builtin/call_test.rb +0 -145
- data/vendor/vagrant/test/unit/vagrant/action/builtin/confirm_test.rb +0 -36
- data/vendor/vagrant/test/unit/vagrant/action/builtin/env_set_test.rb +0 -20
- data/vendor/vagrant/test/unit/vagrant/action/builtin/graceful_halt_test.rb +0 -61
- data/vendor/vagrant/test/unit/vagrant/action/builtin/lock_test.rb +0 -98
- data/vendor/vagrant/test/unit/vagrant/action/builtin/ssh_exec_test.rb +0 -57
- data/vendor/vagrant/test/unit/vagrant/action/hook_test.rb +0 -101
- data/vendor/vagrant/test/unit/vagrant/action/runner_test.rb +0 -71
- data/vendor/vagrant/test/unit/vagrant/action/warden_test.rb +0 -92
- data/vendor/vagrant/test/unit/vagrant/box_collection_test.rb +0 -224
- data/vendor/vagrant/test/unit/vagrant/box_test.rb +0 -109
- data/vendor/vagrant/test/unit/vagrant/cli_test.rb +0 -27
- data/vendor/vagrant/test/unit/vagrant/config/loader_test.rb +0 -184
- data/vendor/vagrant/test/unit/vagrant/config/v1/dummy_config_test.rb +0 -24
- data/vendor/vagrant/test/unit/vagrant/config/v1/loader_test.rb +0 -145
- data/vendor/vagrant/test/unit/vagrant/config/v1/root_test.rb +0 -40
- data/vendor/vagrant/test/unit/vagrant/config/v2/dummy_config_test.rb +0 -24
- data/vendor/vagrant/test/unit/vagrant/config/v2/loader_test.rb +0 -151
- data/vendor/vagrant/test/unit/vagrant/config/v2/root_test.rb +0 -97
- data/vendor/vagrant/test/unit/vagrant/config/v2/util_test.rb +0 -21
- data/vendor/vagrant/test/unit/vagrant/config_test.rb +0 -66
- data/vendor/vagrant/test/unit/vagrant/downloaders/base_test.rb +0 -14
- data/vendor/vagrant/test/unit/vagrant/downloaders/file_test.rb +0 -87
- data/vendor/vagrant/test/unit/vagrant/downloaders/http_test.rb +0 -23
- data/vendor/vagrant/test/unit/vagrant/environment_test.rb +0 -571
- data/vendor/vagrant/test/unit/vagrant/hosts_test.rb +0 -37
- data/vendor/vagrant/test/unit/vagrant/machine_state_test.rb +0 -26
- data/vendor/vagrant/test/unit/vagrant/machine_test.rb +0 -418
- data/vendor/vagrant/test/unit/vagrant/plugin/v1/command_test.rb +0 -143
- data/vendor/vagrant/test/unit/vagrant/plugin/v1/communicator_test.rb +0 -9
- data/vendor/vagrant/test/unit/vagrant/plugin/v1/config_test.rb +0 -50
- data/vendor/vagrant/test/unit/vagrant/plugin/v1/host_test.rb +0 -5
- data/vendor/vagrant/test/unit/vagrant/plugin/v1/manager_test.rb +0 -114
- data/vendor/vagrant/test/unit/vagrant/plugin/v1/plugin_test.rb +0 -267
- data/vendor/vagrant/test/unit/vagrant/plugin/v1/provider_test.rb +0 -18
- data/vendor/vagrant/test/unit/vagrant/plugin/v2/command_test.rb +0 -238
- data/vendor/vagrant/test/unit/vagrant/plugin/v2/communicator_test.rb +0 -9
- data/vendor/vagrant/test/unit/vagrant/plugin/v2/components_test.rb +0 -17
- data/vendor/vagrant/test/unit/vagrant/plugin/v2/config_test.rb +0 -60
- data/vendor/vagrant/test/unit/vagrant/plugin/v2/host_test.rb +0 -5
- data/vendor/vagrant/test/unit/vagrant/plugin/v2/manager_test.rb +0 -157
- data/vendor/vagrant/test/unit/vagrant/plugin/v2/plugin_test.rb +0 -287
- data/vendor/vagrant/test/unit/vagrant/plugin/v2/provider_test.rb +0 -18
- data/vendor/vagrant/test/unit/vagrant/registry_test.rb +0 -128
- data/vendor/vagrant/test/unit/vagrant/util/ansi_escape_code_remover_test.rb +0 -16
- data/vendor/vagrant/test/unit/vagrant/util/file_checksum_test.rb +0 -23
- data/vendor/vagrant/test/unit/vagrant/util/hash_with_indifferent_access_test.rb +0 -38
- data/vendor/vagrant/test/unit/vagrant/util/is_port_open_test.rb +0 -53
- data/vendor/vagrant/test/unit/vagrant/util/line_endings_helper_test.rb +0 -16
- data/vendor/vagrant/test/unit/vagrant/util/network_ip_test.rb +0 -17
- data/vendor/vagrant/test/unit/vagrant/util/retryable_test.rb +0 -106
- data/vendor/vagrant/test/unit/vagrant/util/scoped_hash_override_test.rb +0 -48
- data/vendor/vagrant/test/unit/vagrant/util/ssh_test.rb +0 -30
- data/vendor/vagrant/test/unit/vagrant/util/string_block_editor_test.rb +0 -98
- data/vendor/vagrant/test/unit/vagrant/util/which_test.rb +0 -43
- data/vendor/vagrant/test/unit/vagrant_test.rb +0 -56
- data/vendor/vagrant/vagrant.gemspec +0 -69
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
require 'log4r'
|
|
2
|
-
require 'optparse'
|
|
3
|
-
|
|
4
|
-
module Vagrant
|
|
5
|
-
# Manages the command line interface to Vagrant.
|
|
6
|
-
class CLI < Vagrant.plugin("2", :command)
|
|
7
|
-
def initialize(argv, env)
|
|
8
|
-
super
|
|
9
|
-
|
|
10
|
-
@logger = Log4r::Logger.new("vagrant::cli")
|
|
11
|
-
@main_args, @sub_command, @sub_args = split_main_and_subcommand(argv)
|
|
12
|
-
|
|
13
|
-
@logger.info("CLI: #{@main_args.inspect} #{@sub_command.inspect} #{@sub_args.inspect}")
|
|
14
|
-
end
|
|
15
|
-
|
|
16
|
-
def execute
|
|
17
|
-
if @main_args.include?("-v") || @main_args.include?("--version")
|
|
18
|
-
# Version short-circuits the whole thing. Just print
|
|
19
|
-
# the version and exit.
|
|
20
|
-
@env.ui.info(I18n.t("vagrant.commands.version.output",
|
|
21
|
-
:version => Vagrant::VERSION),
|
|
22
|
-
:prefix => false)
|
|
23
|
-
|
|
24
|
-
return 0
|
|
25
|
-
elsif @main_args.include?("-h") || @main_args.include?("--help")
|
|
26
|
-
# Help is next in short-circuiting everything. Print
|
|
27
|
-
# the help and exit.
|
|
28
|
-
help
|
|
29
|
-
return 0
|
|
30
|
-
end
|
|
31
|
-
|
|
32
|
-
# If we reached this far then we must have a subcommand. If not,
|
|
33
|
-
# then we also just print the help and exit.
|
|
34
|
-
command_class = nil
|
|
35
|
-
if @sub_command
|
|
36
|
-
command_class = Vagrant.plugin("2").manager.commands[@sub_command.to_sym]
|
|
37
|
-
end
|
|
38
|
-
|
|
39
|
-
if !command_class || !@sub_command
|
|
40
|
-
help
|
|
41
|
-
return 1
|
|
42
|
-
end
|
|
43
|
-
@logger.debug("Invoking command class: #{command_class} #{@sub_args.inspect}")
|
|
44
|
-
|
|
45
|
-
# Initialize and execute the command class, returning the exit status.
|
|
46
|
-
result = command_class.new(@sub_args, @env).execute
|
|
47
|
-
result = 0 if !result.is_a?(Fixnum)
|
|
48
|
-
return result
|
|
49
|
-
end
|
|
50
|
-
|
|
51
|
-
# This prints out the help for the CLI.
|
|
52
|
-
def help
|
|
53
|
-
# We use the optionparser for this. Its just easier. We don't use
|
|
54
|
-
# an optionparser above because I don't think the performance hits
|
|
55
|
-
# of creating a whole object are worth checking only a couple flags.
|
|
56
|
-
opts = OptionParser.new do |o|
|
|
57
|
-
o.banner = "Usage: vagrant [-v] [-h] command [<args>]"
|
|
58
|
-
o.separator ""
|
|
59
|
-
o.on("-v", "--version", "Print the version and exit.")
|
|
60
|
-
o.on("-h", "--help", "Print this help.")
|
|
61
|
-
o.separator ""
|
|
62
|
-
o.separator "Available subcommands:"
|
|
63
|
-
|
|
64
|
-
# Add the available subcommands as separators in order to print them
|
|
65
|
-
# out as well.
|
|
66
|
-
keys = []
|
|
67
|
-
Vagrant.plugin("2").manager.commands.each do |key, _|
|
|
68
|
-
keys << key
|
|
69
|
-
end
|
|
70
|
-
|
|
71
|
-
keys.sort.each do |key|
|
|
72
|
-
o.separator " #{key}"
|
|
73
|
-
end
|
|
74
|
-
|
|
75
|
-
o.separator ""
|
|
76
|
-
o.separator "For help on any individual command run `vagrant COMMAND -h`"
|
|
77
|
-
end
|
|
78
|
-
|
|
79
|
-
@env.ui.info(opts.help, :prefix => false)
|
|
80
|
-
end
|
|
81
|
-
end
|
|
82
|
-
end
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
module Vagrant
|
|
2
|
-
module Config
|
|
3
|
-
# Contains loaded configuration values and provides access to those
|
|
4
|
-
# values.
|
|
5
|
-
#
|
|
6
|
-
# This is the class returned when loading configuration and stores
|
|
7
|
-
# the completely loaded configuration values. This class is meant to
|
|
8
|
-
# be immutable.
|
|
9
|
-
class Container
|
|
10
|
-
attr_reader :global
|
|
11
|
-
attr_reader :vms
|
|
12
|
-
|
|
13
|
-
# Initializes the configuration container.
|
|
14
|
-
#
|
|
15
|
-
# @param [Top] global Top-level configuration for the global
|
|
16
|
-
# applicatoin.
|
|
17
|
-
# @param [Array] vms Array of VM configurations.
|
|
18
|
-
def initialize(global, vms)
|
|
19
|
-
@global = global
|
|
20
|
-
@vms = []
|
|
21
|
-
@vm_configs = {}
|
|
22
|
-
|
|
23
|
-
vms.each do |vm_config|
|
|
24
|
-
@vms << vm_config.vm.name
|
|
25
|
-
@vm_configs[vm_config.vm.name] = vm_config
|
|
26
|
-
end
|
|
27
|
-
end
|
|
28
|
-
|
|
29
|
-
# This returns the configuration for a specific virtual machine.
|
|
30
|
-
# The values for this configuration are usually pertinent to a
|
|
31
|
-
# single virtual machine and do not affect the system globally.
|
|
32
|
-
def for_vm(name)
|
|
33
|
-
@vm_configs[name]
|
|
34
|
-
end
|
|
35
|
-
end
|
|
36
|
-
end
|
|
37
|
-
end
|
|
@@ -1,222 +0,0 @@
|
|
|
1
|
-
require "pathname"
|
|
2
|
-
|
|
3
|
-
require "log4r"
|
|
4
|
-
|
|
5
|
-
module Vagrant
|
|
6
|
-
module Config
|
|
7
|
-
# This class is responsible for loading Vagrant configuration,
|
|
8
|
-
# usually in the form of Vagrantfiles.
|
|
9
|
-
#
|
|
10
|
-
# Loading works by specifying the sources for the configuration
|
|
11
|
-
# as well as the order the sources should be loaded. Configuration
|
|
12
|
-
# set later always overrides those set earlier; this is how
|
|
13
|
-
# configuration "scoping" is implemented.
|
|
14
|
-
class Loader
|
|
15
|
-
# Initializes a configuration loader.
|
|
16
|
-
#
|
|
17
|
-
# @param [Registry] versions A registry of the available versions and
|
|
18
|
-
# their associated loaders.
|
|
19
|
-
# @param [Array] version_order An array of the order of the versions
|
|
20
|
-
# in the registry. This is used to determine if upgrades are
|
|
21
|
-
# necessary. Additionally, the last version in this order is always
|
|
22
|
-
# considered the "current" version.
|
|
23
|
-
def initialize(versions, version_order)
|
|
24
|
-
@logger = Log4r::Logger.new("vagrant::config::loader")
|
|
25
|
-
@config_cache = {}
|
|
26
|
-
@proc_cache = {}
|
|
27
|
-
@sources = {}
|
|
28
|
-
@versions = versions
|
|
29
|
-
@version_order = version_order
|
|
30
|
-
end
|
|
31
|
-
|
|
32
|
-
# Set the configuration data for the given name.
|
|
33
|
-
#
|
|
34
|
-
# The `name` should be a symbol and must uniquely identify the data
|
|
35
|
-
# being given.
|
|
36
|
-
#
|
|
37
|
-
# `data` can either be a path to a Ruby Vagrantfile or a `Proc` directly.
|
|
38
|
-
# `data` can also be an array of such values.
|
|
39
|
-
#
|
|
40
|
-
# At this point, no configuration is actually loaded. Note that calling
|
|
41
|
-
# `set` multiple times with the same name will override any previously
|
|
42
|
-
# set values. In this way, the last set data for a given name wins.
|
|
43
|
-
def set(name, sources)
|
|
44
|
-
@logger.info("Set #{name.inspect} = #{sources.inspect}")
|
|
45
|
-
|
|
46
|
-
# Sources should be an array
|
|
47
|
-
sources = [sources] if !sources.kind_of?(Array)
|
|
48
|
-
|
|
49
|
-
# Gather the procs for every source, since that is what we care about.
|
|
50
|
-
procs = []
|
|
51
|
-
sources.each do |source|
|
|
52
|
-
if !@proc_cache.has_key?(source)
|
|
53
|
-
# Load the procs for this source and cache them. This caching
|
|
54
|
-
# avoids the issue where a file may have side effects when loading
|
|
55
|
-
# and loading it multiple times causes unexpected behavior.
|
|
56
|
-
@logger.debug("Populating proc cache for #{source.inspect}")
|
|
57
|
-
@proc_cache[source] = procs_for_source(source)
|
|
58
|
-
end
|
|
59
|
-
|
|
60
|
-
# Add on to the array of procs we're going to use
|
|
61
|
-
procs.concat(@proc_cache[source])
|
|
62
|
-
end
|
|
63
|
-
|
|
64
|
-
# Set this source by name.
|
|
65
|
-
@sources[name] = procs
|
|
66
|
-
end
|
|
67
|
-
|
|
68
|
-
# This loads the configuration sources in the given order and returns
|
|
69
|
-
# an actual configuration object that is ready to be used.
|
|
70
|
-
#
|
|
71
|
-
# @param [Array<Symbol>] order The order of configuration to load.
|
|
72
|
-
# @return [Object] The configuration object. This is different for
|
|
73
|
-
# each configuration version.
|
|
74
|
-
def load(order)
|
|
75
|
-
@logger.info("Loading configuration in order: #{order.inspect}")
|
|
76
|
-
|
|
77
|
-
unknown_sources = @sources.keys - order
|
|
78
|
-
if !unknown_sources.empty?
|
|
79
|
-
# TODO: Raise exception here perhaps.
|
|
80
|
-
@logger.error("Unknown config sources: #{unknown_sources.inspect}")
|
|
81
|
-
end
|
|
82
|
-
|
|
83
|
-
# Get the current version config class to use
|
|
84
|
-
current_version = @version_order.last
|
|
85
|
-
current_config_klass = @versions.get(current_version)
|
|
86
|
-
|
|
87
|
-
# This will hold our result
|
|
88
|
-
result = current_config_klass.init
|
|
89
|
-
|
|
90
|
-
# Keep track of the warnings and errors that may come from
|
|
91
|
-
# upgrading the Vagrantfiles
|
|
92
|
-
warnings = []
|
|
93
|
-
errors = []
|
|
94
|
-
|
|
95
|
-
order.each do |key|
|
|
96
|
-
next if !@sources.has_key?(key)
|
|
97
|
-
|
|
98
|
-
@sources[key].each do |version, proc|
|
|
99
|
-
if !@config_cache.has_key?(proc)
|
|
100
|
-
@logger.debug("Loading from: #{key} (evaluating)")
|
|
101
|
-
|
|
102
|
-
# Get the proper version loader for this version and load
|
|
103
|
-
version_loader = @versions.get(version)
|
|
104
|
-
version_config = version_loader.load(proc)
|
|
105
|
-
|
|
106
|
-
# Store the errors/warnings associated with loading this
|
|
107
|
-
# configuration. We'll store these for later.
|
|
108
|
-
version_warnings = []
|
|
109
|
-
version_errors = []
|
|
110
|
-
|
|
111
|
-
# If this version is not the current version, then we need
|
|
112
|
-
# to upgrade to the latest version.
|
|
113
|
-
if version != current_version
|
|
114
|
-
@logger.debug("Upgrading config from version #{version} to #{current_version}")
|
|
115
|
-
version_index = @version_order.index(version)
|
|
116
|
-
current_index = @version_order.index(current_version)
|
|
117
|
-
|
|
118
|
-
(version_index + 1).upto(current_index) do |index|
|
|
119
|
-
next_version = @version_order[index]
|
|
120
|
-
@logger.debug("Upgrading config to version #{next_version}")
|
|
121
|
-
|
|
122
|
-
# Get the loader of this version and ask it to upgrade
|
|
123
|
-
loader = @versions.get(next_version)
|
|
124
|
-
upgrade_result = loader.upgrade(version_config)
|
|
125
|
-
|
|
126
|
-
this_warnings = upgrade_result[1]
|
|
127
|
-
this_errors = upgrade_result[2]
|
|
128
|
-
@logger.debug("Upgraded to version #{next_version} with " +
|
|
129
|
-
"#{this_warnings.length} warnings and " +
|
|
130
|
-
"#{this_errors.length} errors")
|
|
131
|
-
|
|
132
|
-
# Append loading this to the version warnings and errors
|
|
133
|
-
version_warnings += this_warnings
|
|
134
|
-
version_errors += this_errors
|
|
135
|
-
|
|
136
|
-
# Store the new upgraded version
|
|
137
|
-
version_config = upgrade_result[0]
|
|
138
|
-
end
|
|
139
|
-
end
|
|
140
|
-
|
|
141
|
-
# Cache the loaded configuration along with any warnings
|
|
142
|
-
# or errors so that they can be retrieved later.
|
|
143
|
-
@config_cache[proc] = [version_config, version_warnings, version_errors]
|
|
144
|
-
else
|
|
145
|
-
@logger.debug("Loading from: #{key} (cache)")
|
|
146
|
-
end
|
|
147
|
-
|
|
148
|
-
# Merge the configurations
|
|
149
|
-
cache_data = @config_cache[proc]
|
|
150
|
-
result = current_config_klass.merge(result, cache_data[0])
|
|
151
|
-
|
|
152
|
-
# Append the total warnings/errors
|
|
153
|
-
warnings += cache_data[1]
|
|
154
|
-
errors += cache_data[2]
|
|
155
|
-
end
|
|
156
|
-
end
|
|
157
|
-
|
|
158
|
-
@logger.debug("Configuration loaded successfully, finalizing and returning")
|
|
159
|
-
[current_config_klass.finalize(result), warnings, errors]
|
|
160
|
-
end
|
|
161
|
-
|
|
162
|
-
protected
|
|
163
|
-
|
|
164
|
-
# This returns an array of `Proc` objects for the given source.
|
|
165
|
-
# The `Proc` objects returned will expect a single argument for
|
|
166
|
-
# the configuration object and are expected to mutate this
|
|
167
|
-
# configuration object.
|
|
168
|
-
def procs_for_source(source)
|
|
169
|
-
# Convert all pathnames to strings so we just have their path
|
|
170
|
-
source = source.to_s if source.is_a?(Pathname)
|
|
171
|
-
|
|
172
|
-
if source.is_a?(Array)
|
|
173
|
-
# An array must be formatted as [version, proc], so verify
|
|
174
|
-
# that and then return it
|
|
175
|
-
raise ArgumentError, "String source must have format [version, proc]" if source.length != 2
|
|
176
|
-
|
|
177
|
-
# Return it as an array since we're expected to return an array
|
|
178
|
-
# of [version, proc] pairs, but an array source only has one.
|
|
179
|
-
return [source]
|
|
180
|
-
elsif source.is_a?(String)
|
|
181
|
-
# Strings are considered paths, so load them
|
|
182
|
-
return procs_for_path(source)
|
|
183
|
-
else
|
|
184
|
-
raise ArgumentError, "Unknown configuration source: #{source.inspect}"
|
|
185
|
-
end
|
|
186
|
-
end
|
|
187
|
-
|
|
188
|
-
# This returns an array of `Proc` objects for the given path source.
|
|
189
|
-
#
|
|
190
|
-
# @param [String] path Path to the file which contains the proper
|
|
191
|
-
# `Vagrant.configure` calls.
|
|
192
|
-
# @return [Array<Proc>]
|
|
193
|
-
def procs_for_path(path)
|
|
194
|
-
@logger.debug("Load procs for pathname: #{path}")
|
|
195
|
-
|
|
196
|
-
return Config.capture_configures do
|
|
197
|
-
begin
|
|
198
|
-
Kernel.load path
|
|
199
|
-
rescue SyntaxError => e
|
|
200
|
-
# Report syntax errors in a nice way.
|
|
201
|
-
raise Errors::VagrantfileSyntaxError, :file => e.message
|
|
202
|
-
rescue SystemExit
|
|
203
|
-
# Continue raising that exception...
|
|
204
|
-
raise
|
|
205
|
-
rescue Vagrant::Errors::VagrantError
|
|
206
|
-
# Continue raising known Vagrant errors since they already
|
|
207
|
-
# contain well worded error messages and context.
|
|
208
|
-
raise
|
|
209
|
-
rescue Exception => e
|
|
210
|
-
@logger.error("Vagrantfile load error: #{e.message}")
|
|
211
|
-
@logger.error(e.backtrace.join("\n"))
|
|
212
|
-
|
|
213
|
-
# Report the generic exception
|
|
214
|
-
raise Errors::VagrantfileLoadError,
|
|
215
|
-
:path => path,
|
|
216
|
-
:message => e.message
|
|
217
|
-
end
|
|
218
|
-
end
|
|
219
|
-
end
|
|
220
|
-
end
|
|
221
|
-
end
|
|
222
|
-
end
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
module Vagrant
|
|
2
|
-
module Config
|
|
3
|
-
module V1
|
|
4
|
-
# This is a configuration object that can have anything done
|
|
5
|
-
# to it. Anything, and it just appears to keep working.
|
|
6
|
-
class DummyConfig
|
|
7
|
-
def method_missing(name, *args, &block)
|
|
8
|
-
DummyConfig.new
|
|
9
|
-
end
|
|
10
|
-
end
|
|
11
|
-
end
|
|
12
|
-
end
|
|
13
|
-
end
|
|
@@ -1,105 +0,0 @@
|
|
|
1
|
-
require "vagrant/config/v1/root"
|
|
2
|
-
|
|
3
|
-
module Vagrant
|
|
4
|
-
module Config
|
|
5
|
-
module V1
|
|
6
|
-
# This is the loader that handles configuration loading for V1
|
|
7
|
-
# configurations.
|
|
8
|
-
class Loader < VersionBase
|
|
9
|
-
# Returns a bare empty configuration object.
|
|
10
|
-
#
|
|
11
|
-
# @return [V1::Root]
|
|
12
|
-
def self.init
|
|
13
|
-
new_root_object
|
|
14
|
-
end
|
|
15
|
-
|
|
16
|
-
# Finalizes the configuration by making sure there is at least
|
|
17
|
-
# one VM defined in it.
|
|
18
|
-
def self.finalize(config)
|
|
19
|
-
# Call the `#finalize` method on each of the configuration keys.
|
|
20
|
-
# They're expected to modify themselves in our case.
|
|
21
|
-
config.finalize!
|
|
22
|
-
|
|
23
|
-
# Return the object
|
|
24
|
-
config
|
|
25
|
-
end
|
|
26
|
-
|
|
27
|
-
# Loads the configuration for the given proc and returns a configuration
|
|
28
|
-
# object.
|
|
29
|
-
#
|
|
30
|
-
# @param [Proc] config_proc
|
|
31
|
-
# @return [Object]
|
|
32
|
-
def self.load(config_proc)
|
|
33
|
-
# Create a root configuration object
|
|
34
|
-
root = new_root_object
|
|
35
|
-
|
|
36
|
-
# Call the proc with the root
|
|
37
|
-
config_proc.call(root)
|
|
38
|
-
|
|
39
|
-
# Return the root object, which doubles as the configuration object
|
|
40
|
-
# we actually use for accessing as well.
|
|
41
|
-
root
|
|
42
|
-
end
|
|
43
|
-
|
|
44
|
-
# Merges two configuration objects.
|
|
45
|
-
#
|
|
46
|
-
# @param [V1::Root] old The older root config.
|
|
47
|
-
# @param [V1::Root] new The newer root config.
|
|
48
|
-
# @return [V1::Root]
|
|
49
|
-
def self.merge(old, new)
|
|
50
|
-
# Grab the internal states, we use these heavily throughout the process
|
|
51
|
-
old_state = old.__internal_state
|
|
52
|
-
new_state = new.__internal_state
|
|
53
|
-
|
|
54
|
-
# The config map for the new object is the old one merged with the
|
|
55
|
-
# new one.
|
|
56
|
-
config_map = old_state["config_map"].merge(new_state["config_map"])
|
|
57
|
-
|
|
58
|
-
# Merge the keys.
|
|
59
|
-
old_keys = old_state["keys"]
|
|
60
|
-
new_keys = new_state["keys"]
|
|
61
|
-
keys = {}
|
|
62
|
-
old_keys.each do |key, old_value|
|
|
63
|
-
if new_keys.has_key?(key)
|
|
64
|
-
# We need to do a merge, which we expect to be available
|
|
65
|
-
# on the config class itself.
|
|
66
|
-
keys[key] = old_value.merge(new_keys[key])
|
|
67
|
-
else
|
|
68
|
-
# We just take the old value, but dup it so that we can modify.
|
|
69
|
-
keys[key] = old_value.dup
|
|
70
|
-
end
|
|
71
|
-
end
|
|
72
|
-
|
|
73
|
-
new_keys.each do |key, new_value|
|
|
74
|
-
# Add in the keys that the new class has that we haven't merged.
|
|
75
|
-
if !keys.has_key?(key)
|
|
76
|
-
keys[key] = new_value.dup
|
|
77
|
-
end
|
|
78
|
-
end
|
|
79
|
-
|
|
80
|
-
# Return the final root object
|
|
81
|
-
V1::Root.new(config_map, keys)
|
|
82
|
-
end
|
|
83
|
-
|
|
84
|
-
protected
|
|
85
|
-
|
|
86
|
-
def self.new_root_object
|
|
87
|
-
# Get all the registered configuration objects and use them. If
|
|
88
|
-
# we're currently on version 1, then we load all the config objects,
|
|
89
|
-
# otherwise we load only the upgrade safe ones, since we're
|
|
90
|
-
# obviously being loaded for an upgrade.
|
|
91
|
-
config_map = nil
|
|
92
|
-
plugin_manager = Vagrant.plugin("1").manager
|
|
93
|
-
if Config::CURRENT_VERSION == "1"
|
|
94
|
-
config_map = plugin_manager.config
|
|
95
|
-
else
|
|
96
|
-
config_map = plugin_manager.config_upgrade_safe
|
|
97
|
-
end
|
|
98
|
-
|
|
99
|
-
# Create the configuration root object
|
|
100
|
-
V1::Root.new(config_map)
|
|
101
|
-
end
|
|
102
|
-
end
|
|
103
|
-
end
|
|
104
|
-
end
|
|
105
|
-
end
|