vagrant 1.0.7 → 1.5.0
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 +7 -0
- data/.gitignore +14 -43
- data/Gemfile +2 -1
- data/LICENSE.txt +22 -0
- data/README.md +3 -90
- data/Rakefile +1 -18
- data/bin/vagrant +2 -58
- data/message.txt +17 -0
- data/vagrant.gemspec +20 -69
- metadata +43 -655
- data/.yardopts +0 -1
- data/CHANGELOG.md +0 -723
- data/LICENSE +0 -21
- data/config/default.rb +0 -30
- data/contrib/README.md +0 -12
- data/contrib/emacs/vagrant.el +0 -8
- data/contrib/vim/vagrantfile.vim +0 -9
- data/keys/README.md +0 -17
- data/keys/vagrant +0 -27
- data/keys/vagrant.pub +0 -1
- data/lib/vagrant.rb +0 -197
- data/lib/vagrant/action.rb +0 -63
- data/lib/vagrant/action/box/destroy.rb +0 -25
- data/lib/vagrant/action/box/download.rb +0 -84
- data/lib/vagrant/action/box/package.rb +0 -19
- data/lib/vagrant/action/box/unpackage.rb +0 -61
- data/lib/vagrant/action/box/verify.rb +0 -23
- data/lib/vagrant/action/builder.rb +0 -128
- data/lib/vagrant/action/builtin.rb +0 -171
- data/lib/vagrant/action/env/set.rb +0 -21
- data/lib/vagrant/action/environment.rb +0 -12
- data/lib/vagrant/action/general/check_virtualbox.rb +0 -28
- data/lib/vagrant/action/general/package.rb +0 -101
- data/lib/vagrant/action/general/validate.rb +0 -18
- data/lib/vagrant/action/runner.rb +0 -53
- data/lib/vagrant/action/vm/boot.rb +0 -53
- data/lib/vagrant/action/vm/check_accessible.rb +0 -23
- data/lib/vagrant/action/vm/check_box.rb +0 -33
- data/lib/vagrant/action/vm/check_guest_additions.rb +0 -38
- data/lib/vagrant/action/vm/check_port_collisions.rb +0 -89
- data/lib/vagrant/action/vm/clean_machine_folder.rb +0 -43
- data/lib/vagrant/action/vm/clear_forwarded_ports.rb +0 -18
- data/lib/vagrant/action/vm/clear_network_interfaces.rb +0 -31
- data/lib/vagrant/action/vm/clear_shared_folders.rb +0 -18
- data/lib/vagrant/action/vm/customize.rb +0 -36
- data/lib/vagrant/action/vm/default_name.rb +0 -22
- data/lib/vagrant/action/vm/destroy.rb +0 -19
- data/lib/vagrant/action/vm/destroy_unused_network_interfaces.rb +0 -20
- data/lib/vagrant/action/vm/discard_state.rb +0 -22
- data/lib/vagrant/action/vm/export.rb +0 -57
- data/lib/vagrant/action/vm/forward_ports.rb +0 -92
- data/lib/vagrant/action/vm/halt.rb +0 -32
- data/lib/vagrant/action/vm/host_name.rb +0 -21
- data/lib/vagrant/action/vm/import.rb +0 -48
- data/lib/vagrant/action/vm/match_mac_address.rb +0 -21
- data/lib/vagrant/action/vm/network.rb +0 -403
- data/lib/vagrant/action/vm/nfs.rb +0 -196
- data/lib/vagrant/action/vm/package.rb +0 -23
- data/lib/vagrant/action/vm/package_vagrantfile.rb +0 -36
- data/lib/vagrant/action/vm/provision.rb +0 -61
- data/lib/vagrant/action/vm/provisioner_cleanup.rb +0 -26
- data/lib/vagrant/action/vm/prune_nfs_exports.rb +0 -20
- data/lib/vagrant/action/vm/resume.rb +0 -20
- data/lib/vagrant/action/vm/sane_defaults.rb +0 -78
- data/lib/vagrant/action/vm/setup_package_files.rb +0 -54
- data/lib/vagrant/action/vm/share_folders.rb +0 -114
- data/lib/vagrant/action/vm/suspend.rb +0 -20
- data/lib/vagrant/action/warden.rb +0 -92
- data/lib/vagrant/box.rb +0 -44
- data/lib/vagrant/box_collection.rb +0 -58
- data/lib/vagrant/cli.rb +0 -76
- data/lib/vagrant/command.rb +0 -24
- data/lib/vagrant/command/base.rb +0 -167
- data/lib/vagrant/command/box.rb +0 -58
- data/lib/vagrant/command/box_add.rb +0 -37
- data/lib/vagrant/command/box_list.rb +0 -28
- data/lib/vagrant/command/box_remove.rb +0 -27
- data/lib/vagrant/command/box_repackage.rb +0 -27
- data/lib/vagrant/command/destroy.rb +0 -64
- data/lib/vagrant/command/gem.rb +0 -39
- data/lib/vagrant/command/halt.rb +0 -39
- data/lib/vagrant/command/init.rb +0 -40
- data/lib/vagrant/command/package.rb +0 -75
- data/lib/vagrant/command/provision.rb +0 -40
- data/lib/vagrant/command/reload.rb +0 -39
- data/lib/vagrant/command/resume.rb +0 -33
- data/lib/vagrant/command/ssh.rb +0 -90
- data/lib/vagrant/command/ssh_config.rb +0 -51
- data/lib/vagrant/command/start_mixins.rb +0 -26
- data/lib/vagrant/command/status.rb +0 -36
- data/lib/vagrant/command/suspend.rb +0 -33
- data/lib/vagrant/command/up.rb +0 -40
- data/lib/vagrant/communication.rb +0 -7
- data/lib/vagrant/communication/base.rb +0 -56
- data/lib/vagrant/communication/ssh.rb +0 -230
- data/lib/vagrant/config.rb +0 -49
- data/lib/vagrant/config/base.rb +0 -82
- data/lib/vagrant/config/container.rb +0 -37
- data/lib/vagrant/config/error_recorder.rb +0 -19
- data/lib/vagrant/config/loader.rb +0 -127
- data/lib/vagrant/config/nfs.rb +0 -8
- data/lib/vagrant/config/package.rb +0 -7
- data/lib/vagrant/config/ssh.rb +0 -27
- data/lib/vagrant/config/top.rb +0 -72
- data/lib/vagrant/config/vagrant.rb +0 -14
- data/lib/vagrant/config/vm.rb +0 -168
- data/lib/vagrant/config/vm/provisioner.rb +0 -52
- data/lib/vagrant/config/vm/sub_vm.rb +0 -17
- data/lib/vagrant/data_store.rb +0 -92
- data/lib/vagrant/downloaders.rb +0 -7
- data/lib/vagrant/downloaders/base.rb +0 -25
- data/lib/vagrant/downloaders/file.rb +0 -22
- data/lib/vagrant/downloaders/http.rb +0 -97
- data/lib/vagrant/driver.rb +0 -8
- data/lib/vagrant/driver/virtualbox.rb +0 -134
- data/lib/vagrant/driver/virtualbox_4_0.rb +0 -459
- data/lib/vagrant/driver/virtualbox_4_1.rb +0 -459
- data/lib/vagrant/driver/virtualbox_4_2.rb +0 -606
- data/lib/vagrant/driver/virtualbox_base.rb +0 -326
- data/lib/vagrant/environment.rb +0 -522
- data/lib/vagrant/errors.rb +0 -445
- data/lib/vagrant/guest.rb +0 -18
- data/lib/vagrant/guest/arch.rb +0 -56
- data/lib/vagrant/guest/base.rb +0 -99
- data/lib/vagrant/guest/debian.rb +0 -64
- data/lib/vagrant/guest/fedora.rb +0 -66
- data/lib/vagrant/guest/freebsd.rb +0 -86
- data/lib/vagrant/guest/gentoo.rb +0 -46
- data/lib/vagrant/guest/linux.rb +0 -118
- data/lib/vagrant/guest/linux/config.rb +0 -19
- data/lib/vagrant/guest/linux/error.rb +0 -9
- data/lib/vagrant/guest/openbsd.rb +0 -20
- data/lib/vagrant/guest/redhat.rb +0 -67
- data/lib/vagrant/guest/solaris.rb +0 -118
- data/lib/vagrant/guest/suse.rb +0 -17
- data/lib/vagrant/guest/ubuntu.rb +0 -23
- data/lib/vagrant/hosts.rb +0 -37
- data/lib/vagrant/hosts/arch.rb +0 -55
- data/lib/vagrant/hosts/base.rb +0 -66
- data/lib/vagrant/hosts/bsd.rb +0 -97
- data/lib/vagrant/hosts/fedora.rb +0 -47
- data/lib/vagrant/hosts/freebsd.rb +0 -41
- data/lib/vagrant/hosts/gentoo.rb +0 -20
- data/lib/vagrant/hosts/linux.rb +0 -94
- data/lib/vagrant/hosts/opensuse.rb +0 -30
- data/lib/vagrant/hosts/windows.rb +0 -16
- data/lib/vagrant/plugin.rb +0 -81
- data/lib/vagrant/provisioners.rb +0 -12
- data/lib/vagrant/provisioners/base.rb +0 -44
- data/lib/vagrant/provisioners/chef.rb +0 -168
- data/lib/vagrant/provisioners/chef_client.rb +0 -132
- data/lib/vagrant/provisioners/chef_solo.rb +0 -234
- data/lib/vagrant/provisioners/puppet.rb +0 -176
- data/lib/vagrant/provisioners/puppet_server.rb +0 -78
- data/lib/vagrant/provisioners/shell.rb +0 -103
- data/lib/vagrant/registry.rb +0 -52
- data/lib/vagrant/ssh.rb +0 -126
- data/lib/vagrant/test_helpers.rb +0 -154
- data/lib/vagrant/ui.rb +0 -168
- data/lib/vagrant/util.rb +0 -12
- data/lib/vagrant/util/ansi_escape_code_remover.rb +0 -34
- data/lib/vagrant/util/busy.rb +0 -59
- data/lib/vagrant/util/counter.rb +0 -24
- data/lib/vagrant/util/file_checksum.rb +0 -38
- data/lib/vagrant/util/file_mode.rb +0 -12
- data/lib/vagrant/util/hash_with_indifferent_access.rb +0 -63
- data/lib/vagrant/util/is_port_open.rb +0 -38
- data/lib/vagrant/util/line_ending_helpers.rb +0 -14
- data/lib/vagrant/util/network_ip.rb +0 -28
- data/lib/vagrant/util/platform.rb +0 -68
- data/lib/vagrant/util/retryable.rb +0 -25
- data/lib/vagrant/util/safe_exec.rb +0 -36
- data/lib/vagrant/util/safe_puts.rb +0 -31
- data/lib/vagrant/util/stacked_proc_runner.rb +0 -35
- data/lib/vagrant/util/subprocess.rb +0 -247
- data/lib/vagrant/util/template_renderer.rb +0 -83
- data/lib/vagrant/version.rb +0 -6
- data/lib/vagrant/vm.rb +0 -195
- data/tasks/acceptance.rake +0 -113
- data/tasks/bundler.rake +0 -3
- data/tasks/test.rake +0 -20
- data/templates/commands/init/Vagrantfile.erb +0 -99
- data/templates/commands/ssh_config/config.erb +0 -15
- data/templates/config/validation_failed.erb +0 -7
- data/templates/guests/arch/network_dhcp.erb +0 -7
- data/templates/guests/arch/network_static.erb +0 -7
- data/templates/guests/debian/network_dhcp.erb +0 -6
- data/templates/guests/debian/network_static.erb +0 -7
- data/templates/guests/fedora/network_dhcp.erb +0 -6
- data/templates/guests/fedora/network_static.erb +0 -13
- data/templates/guests/freebsd/network_dhcp.erb +0 -3
- data/templates/guests/freebsd/network_static.erb +0 -3
- data/templates/guests/gentoo/network_dhcp.erb +0 -4
- data/templates/guests/gentoo/network_static.erb +0 -4
- data/templates/guests/redhat/network_dhcp.erb +0 -6
- data/templates/guests/redhat/network_static.erb +0 -7
- data/templates/locales/en.yml +0 -759
- data/templates/nfs/exports.erb +0 -5
- data/templates/nfs/exports_freebsd.erb +0 -5
- data/templates/nfs/exports_linux.erb +0 -5
- data/templates/package_Vagrantfile.erb +0 -11
- data/templates/provisioners/chef_client/client.erb +0 -32
- data/templates/provisioners/chef_solo/solo.erb +0 -25
- data/test/acceptance/base.rb +0 -48
- data/test/acceptance/box_test.rb +0 -99
- data/test/acceptance/destroy_test.rb +0 -37
- data/test/acceptance/halt_test.rb +0 -72
- data/test/acceptance/init_test.rb +0 -33
- data/test/acceptance/networking/host_only_test.rb +0 -37
- data/test/acceptance/networking/port_forward_test.rb +0 -125
- data/test/acceptance/package_test.rb +0 -46
- data/test/acceptance/provisioning/basic_test.rb +0 -61
- data/test/acceptance/provisioning/chef_solo_test.rb +0 -37
- data/test/acceptance/provisioning/shell_test.rb +0 -53
- data/test/acceptance/resume_test.rb +0 -17
- data/test/acceptance/shared_folders_test.rb +0 -84
- data/test/acceptance/skeletons/chef_solo_basic/README.md +0 -3
- data/test/acceptance/skeletons/chef_solo_basic/cookbooks/basic/recipes/default.rb +0 -5
- data/test/acceptance/skeletons/chef_solo_json/README.md +0 -3
- data/test/acceptance/skeletons/chef_solo_json/cookbooks/basic/recipes/default.rb +0 -6
- data/test/acceptance/skeletons/provisioner_multi/README.md +0 -3
- data/test/acceptance/skeletons/provisioner_multi/cookbooks/basic/recipes/default.rb +0 -5
- data/test/acceptance/ssh_test.rb +0 -46
- data/test/acceptance/support/config.rb +0 -42
- data/test/acceptance/support/isolated_environment.rb +0 -117
- data/test/acceptance/support/matchers/have_color.rb +0 -9
- data/test/acceptance/support/matchers/match_output.rb +0 -14
- data/test/acceptance/support/matchers/succeed.rb +0 -14
- data/test/acceptance/support/network_tests.rb +0 -29
- data/test/acceptance/support/output.rb +0 -95
- data/test/acceptance/support/shared/base_context.rb +0 -72
- data/test/acceptance/support/shared/command_examples.rb +0 -33
- data/test/acceptance/support/virtualbox.rb +0 -36
- data/test/acceptance/suspend_test.rb +0 -56
- data/test/acceptance/up_basic_test.rb +0 -33
- data/test/acceptance/up_with_box_url.rb +0 -40
- data/test/acceptance/vagrant_test.rb +0 -47
- data/test/acceptance/version_test.rb +0 -15
- data/test/buildbot/README.md +0 -72
- data/test/buildbot/buildbot_config/__init__.py +0 -0
- data/test/buildbot/buildbot_config/config/__init__.py +0 -0
- data/test/buildbot/buildbot_config/config/loader.py +0 -24
- data/test/buildbot/buildbot_config/config/master.py +0 -24
- data/test/buildbot/buildbot_config/config/slave.py +0 -22
- data/test/buildbot/buildbot_config/master/__init__.py +0 -6
- data/test/buildbot/buildbot_config/master/builders.py +0 -78
- data/test/buildbot/buildbot_config/master/buildsteps.py +0 -100
- data/test/buildbot/buildbot_config/master/change_sources.py +0 -8
- data/test/buildbot/buildbot_config/master/schedulers.py +0 -32
- data/test/buildbot/buildbot_config/master/slaves.py +0 -60
- data/test/buildbot/buildbot_config/master/status.py +0 -52
- data/test/buildbot/master/Makefile.sample +0 -28
- data/test/buildbot/master/buildbot.tac +0 -36
- data/test/buildbot/master/master.cfg +0 -67
- data/test/buildbot/master/public_html/bg_gradient.jpg +0 -0
- data/test/buildbot/master/public_html/default.css +0 -545
- data/test/buildbot/master/public_html/favicon.ico +0 -0
- data/test/buildbot/master/public_html/robots.txt +0 -10
- data/test/buildbot/master/public_html/static/css/bootstrap-1.4.0.min.css +0 -356
- data/test/buildbot/master/public_html/static/css/prettify.css +0 -97
- data/test/buildbot/master/public_html/static/css/syntax.css +0 -60
- data/test/buildbot/master/public_html/static/css/vagrant.base.css +0 -205
- data/test/buildbot/master/public_html/static/images/base_box_mac.jpg +0 -0
- data/test/buildbot/master/public_html/static/images/getting-started/success.jpg +0 -0
- data/test/buildbot/master/public_html/static/images/icons/error.png +0 -0
- data/test/buildbot/master/public_html/static/images/vagrant_chilling.png +0 -0
- data/test/buildbot/master/public_html/static/images/vagrant_holding.png +0 -0
- data/test/buildbot/master/public_html/static/images/vagrant_looking.png +0 -0
- data/test/buildbot/master/public_html/static/images/windows/alter_path.jpg +0 -0
- data/test/buildbot/master/public_html/static/images/windows/edit_path.jpg +0 -0
- data/test/buildbot/master/public_html/static/images/windows/environment_variables_button.jpg +0 -0
- data/test/buildbot/master/public_html/static/images/windows/port_and_ppk_path.jpg +0 -0
- data/test/buildbot/master/public_html/static/images/windows/ppk_selection.jpg +0 -0
- data/test/buildbot/master/public_html/static/images/windows/putty_first_screen.jpg +0 -0
- data/test/buildbot/master/public_html/static/images/windows/save_result.jpg +0 -0
- data/test/buildbot/master/public_html/static/images/windows/vbox_manage_default_location.jpg +0 -0
- data/test/buildbot/master/public_html/static/js/bootstrap-tabs.js +0 -80
- data/test/buildbot/master/public_html/static/js/jquery-1.7.min.js +0 -4
- data/test/buildbot/master/templates/authfail.html +0 -9
- data/test/buildbot/master/templates/build.html +0 -205
- data/test/buildbot/master/templates/builder.html +0 -118
- data/test/buildbot/master/templates/builders.html +0 -33
- data/test/buildbot/master/templates/buildslave.html +0 -72
- data/test/buildbot/master/templates/buildslaves.html +0 -70
- data/test/buildbot/master/templates/change.html +0 -15
- data/test/buildbot/master/templates/layouts/base.html +0 -58
- data/test/buildbot/master/templates/macros/box.html +0 -37
- data/test/buildbot/master/templates/macros/build_line.html +0 -50
- data/test/buildbot/master/templates/macros/change.html +0 -81
- data/test/buildbot/master/templates/macros/forms.html +0 -300
- data/test/buildbot/master/templates/root.html +0 -42
- data/test/buildbot/master/templates/waterfall.html +0 -53
- data/test/buildbot/requirements.txt +0 -4
- data/test/buildbot/scripts/deploy.sh +0 -38
- data/test/buildbot/scripts/setup.sh +0 -107
- data/test/buildbot/slave/buildbot.tac +0 -43
- data/test/buildbot/slave/info/admin +0 -1
- data/test/buildbot/slave/info/host +0 -1
- data/test/buildbot/tests/__init__.py +0 -0
- data/test/buildbot/tests/master/__init__.py +0 -0
- data/test/buildbot/tests/master/test_slaves.py +0 -41
- data/test/buildbot/vendor/choices-0.4.0.tar.gz +0 -0
- data/test/config/acceptance_boxes.yml +0 -7
- data/test/support/isolated_environment.rb +0 -46
- data/test/support/tempdir.rb +0 -34
- data/test/unit/base.rb +0 -21
- data/test/unit/support/isolated_environment.rb +0 -47
- data/test/unit/support/shared/base_context.rb +0 -30
- data/test/unit/vagrant/action/builder_test.rb +0 -156
- data/test/unit/vagrant/action/environment_test.rb +0 -16
- data/test/unit/vagrant/action/runner_test.rb +0 -65
- data/test/unit/vagrant/action/warden_test.rb +0 -92
- data/test/unit/vagrant/box_collection_test.rb +0 -56
- data/test/unit/vagrant/box_test.rb +0 -34
- data/test/unit/vagrant/command/base_test.rb +0 -150
- data/test/unit/vagrant/config/base_test.rb +0 -48
- data/test/unit/vagrant/config/loader_test.rb +0 -79
- data/test/unit/vagrant/config/ssh_test.rb +0 -17
- data/test/unit/vagrant/config/top_test.rb +0 -69
- data/test/unit/vagrant/config/vm_test.rb +0 -71
- data/test/unit/vagrant/config_test.rb +0 -27
- data/test/unit/vagrant/data_store_test.rb +0 -79
- data/test/unit/vagrant/downloaders/base_test.rb +0 -18
- data/test/unit/vagrant/downloaders/file_test.rb +0 -75
- data/test/unit/vagrant/downloaders/http_test.rb +0 -19
- data/test/unit/vagrant/environment_test.rb +0 -220
- data/test/unit/vagrant/hosts_test.rb +0 -36
- data/test/unit/vagrant/registry_test.rb +0 -74
- data/test/unit/vagrant/util/ansi_escape_code_remover_test.rb +0 -16
- data/test/unit/vagrant/util/file_checksum_test.rb +0 -23
- data/test/unit/vagrant/util/hash_with_indifferent_access_test.rb +0 -38
- data/test/unit/vagrant/util/is_port_open_test.rb +0 -53
- data/test/unit/vagrant/util/line_endings_helper_test.rb +0 -16
- data/test/unit/vagrant/util/network_ip_test.rb +0 -17
- data/test/unit/vagrant/util/retryable_test.rb +0 -106
- data/test/unit/vagrant_test.rb +0 -27
- data/test/unit_legacy/locales/en.yml +0 -8
- data/test/unit_legacy/test_helper.rb +0 -32
- data/test/unit_legacy/vagrant/action/box/destroy_test.rb +0 -18
- data/test/unit_legacy/vagrant/action/box/download_test.rb +0 -125
- data/test/unit_legacy/vagrant/action/box/package_test.rb +0 -25
- data/test/unit_legacy/vagrant/action/box/unpackage_test.rb +0 -84
- data/test/unit_legacy/vagrant/action/box/verify_test.rb +0 -30
- data/test/unit_legacy/vagrant/action/env/set_test.rb +0 -24
- data/test/unit_legacy/vagrant/action/general/package_test.rb +0 -268
- data/test/unit_legacy/vagrant/action/general/validate_test.rb +0 -31
- data/test/unit_legacy/vagrant/action/vm/boot_test.rb +0 -66
- data/test/unit_legacy/vagrant/action/vm/check_accessible_test.rb +0 -61
- data/test/unit_legacy/vagrant/action/vm/check_box_test.rb +0 -61
- data/test/unit_legacy/vagrant/action/vm/check_guest_additions_test.rb +0 -9
- data/test/unit_legacy/vagrant/action/vm/clean_machine_folder_test.rb +0 -84
- data/test/unit_legacy/vagrant/action/vm/clear_forwarded_ports_test.rb +0 -52
- data/test/unit_legacy/vagrant/action/vm/clear_nfs_exports_test.rb +0 -22
- data/test/unit_legacy/vagrant/action/vm/clear_shared_folders_test.rb +0 -40
- data/test/unit_legacy/vagrant/action/vm/customize_test.rb +0 -37
- data/test/unit_legacy/vagrant/action/vm/destroy_test.rb +0 -25
- data/test/unit_legacy/vagrant/action/vm/destroy_unused_network_interfaces_test.rb +0 -49
- data/test/unit_legacy/vagrant/action/vm/discard_state_test.rb +0 -45
- data/test/unit_legacy/vagrant/action/vm/export_test.rb +0 -107
- data/test/unit_legacy/vagrant/action/vm/forward_ports_helpers_test.rb +0 -77
- data/test/unit_legacy/vagrant/action/vm/forward_ports_test.rb +0 -197
- data/test/unit_legacy/vagrant/action/vm/halt_test.rb +0 -79
- data/test/unit_legacy/vagrant/action/vm/host_name_test.rb +0 -36
- data/test/unit_legacy/vagrant/action/vm/import_test.rb +0 -66
- data/test/unit_legacy/vagrant/action/vm/match_mac_address_test.rb +0 -40
- data/test/unit_legacy/vagrant/action/vm/modify_test.rb +0 -38
- data/test/unit_legacy/vagrant/action/vm/network_test.rb +0 -286
- data/test/unit_legacy/vagrant/action/vm/nfs_helpers_test.rb +0 -26
- data/test/unit_legacy/vagrant/action/vm/nfs_test.rb +0 -260
- data/test/unit_legacy/vagrant/action/vm/package_test.rb +0 -25
- data/test/unit_legacy/vagrant/action/vm/package_vagrantfile_test.rb +0 -46
- data/test/unit_legacy/vagrant/action/vm/provision_test.rb +0 -65
- data/test/unit_legacy/vagrant/action/vm/provisioner_cleanup_test.rb +0 -56
- data/test/unit_legacy/vagrant/action/vm/resume_test.rb +0 -35
- data/test/unit_legacy/vagrant/action/vm/share_folders_test.rb +0 -144
- data/test/unit_legacy/vagrant/action/vm/suspend_test.rb +0 -35
- data/test/unit_legacy/vagrant/action_test.rb +0 -89
- data/test/unit_legacy/vagrant/box_collection_test.rb +0 -45
- data/test/unit_legacy/vagrant/box_test.rb +0 -74
- data/test/unit_legacy/vagrant/cli_test.rb +0 -35
- data/test/unit_legacy/vagrant/command/base_test.rb +0 -23
- data/test/unit_legacy/vagrant/command/group_base_test.rb +0 -15
- data/test/unit_legacy/vagrant/command/helpers_test.rb +0 -88
- data/test/unit_legacy/vagrant/command/init_test.rb +0 -10
- data/test/unit_legacy/vagrant/command/package_test.rb +0 -27
- data/test/unit_legacy/vagrant/config/base_test.rb +0 -52
- data/test/unit_legacy/vagrant/config/error_recorder_test.rb +0 -18
- data/test/unit_legacy/vagrant/config/ssh_test.rb +0 -12
- data/test/unit_legacy/vagrant/config/vagrant_test.rb +0 -35
- data/test/unit_legacy/vagrant/config/vm/provisioner_test.rb +0 -92
- data/test/unit_legacy/vagrant/config/vm_test.rb +0 -47
- data/test/unit_legacy/vagrant/config_test.rb +0 -148
- data/test/unit_legacy/vagrant/downloaders/http_test.rb +0 -93
- data/test/unit_legacy/vagrant/environment_test.rb +0 -539
- data/test/unit_legacy/vagrant/errors_test.rb +0 -42
- data/test/unit_legacy/vagrant/hosts/base_test.rb +0 -46
- data/test/unit_legacy/vagrant/hosts/bsd_test.rb +0 -53
- data/test/unit_legacy/vagrant/hosts/linux_test.rb +0 -54
- data/test/unit_legacy/vagrant/plugin_test.rb +0 -9
- data/test/unit_legacy/vagrant/provisioners/base_test.rb +0 -63
- data/test/unit_legacy/vagrant/provisioners/chef_client_test.rb +0 -190
- data/test/unit_legacy/vagrant/provisioners/chef_solo_test.rb +0 -115
- data/test/unit_legacy/vagrant/provisioners/chef_test.rb +0 -209
- data/test/unit_legacy/vagrant/provisioners/puppet_server_test.rb +0 -68
- data/test/unit_legacy/vagrant/provisioners/puppet_test.rb +0 -182
- data/test/unit_legacy/vagrant/provisioners/shell_test.rb +0 -79
- data/test/unit_legacy/vagrant/ssh/session_test.rb +0 -40
- data/test/unit_legacy/vagrant/ssh_test.rb +0 -304
- data/test/unit_legacy/vagrant/systems/base_test.rb +0 -18
- data/test/unit_legacy/vagrant/systems/linux_test.rb +0 -104
- data/test/unit_legacy/vagrant/util/busy_test.rb +0 -106
- data/test/unit_legacy/vagrant/util/counter_test.rb +0 -29
- data/test/unit_legacy/vagrant/util/platform_test.rb +0 -18
- data/test/unit_legacy/vagrant/util/stacked_proc_runner_test.rb +0 -43
- data/test/unit_legacy/vagrant/util/template_renderer_test.rb +0 -145
- data/test/unit_legacy/vagrant/vm_test.rb +0 -300
data/lib/vagrant/config/nfs.rb
DELETED
data/lib/vagrant/config/ssh.rb
DELETED
@@ -1,27 +0,0 @@
|
|
1
|
-
module Vagrant
|
2
|
-
module Config
|
3
|
-
class SSHConfig < Base
|
4
|
-
attr_accessor :username
|
5
|
-
attr_accessor :password
|
6
|
-
attr_accessor :host
|
7
|
-
attr_accessor :port
|
8
|
-
attr_accessor :guest_port
|
9
|
-
attr_accessor :max_tries
|
10
|
-
attr_accessor :timeout
|
11
|
-
attr_accessor :private_key_path
|
12
|
-
attr_accessor :forward_agent
|
13
|
-
attr_accessor :forward_x11
|
14
|
-
attr_accessor :shell
|
15
|
-
|
16
|
-
def validate(env, errors)
|
17
|
-
[:username, :host, :max_tries, :timeout].each do |field|
|
18
|
-
errors.add(I18n.t("vagrant.config.common.error_empty", :field => field)) if !instance_variable_get("@#{field}".to_sym)
|
19
|
-
end
|
20
|
-
|
21
|
-
if private_key_path && !File.file?(File.expand_path(private_key_path, env.root_path))
|
22
|
-
errors.add(I18n.t("vagrant.config.ssh.private_key_missing", :path => private_key_path))
|
23
|
-
end
|
24
|
-
end
|
25
|
-
end
|
26
|
-
end
|
27
|
-
end
|
data/lib/vagrant/config/top.rb
DELETED
@@ -1,72 +0,0 @@
|
|
1
|
-
module Vagrant
|
2
|
-
module Config
|
3
|
-
# This class is the "top" configure class, which handles registering
|
4
|
-
# other configuration classes as well as validation of all configured
|
5
|
-
# classes. This is the object which is returned by {Environment#config}
|
6
|
-
# and has accessors to all other configuration classes.
|
7
|
-
#
|
8
|
-
# If you're looking to create your own configuration class, see {Base}.
|
9
|
-
class Top < Base
|
10
|
-
attr_reader :keys
|
11
|
-
|
12
|
-
def initialize(registry=nil)
|
13
|
-
@keys = {}
|
14
|
-
@registry = registry || Vagrant.config_keys
|
15
|
-
end
|
16
|
-
|
17
|
-
# We use method_missing as a way to get the configuration that is used
|
18
|
-
# for Vagrant and load the proper configuration classes for each.
|
19
|
-
def method_missing(name, *args)
|
20
|
-
return @keys[name] if @keys.has_key?(name)
|
21
|
-
|
22
|
-
config_klass = @registry.get(name.to_sym)
|
23
|
-
if config_klass
|
24
|
-
# Instantiate the class and return the instance
|
25
|
-
@keys[name] = config_klass.new
|
26
|
-
return @keys[name]
|
27
|
-
else
|
28
|
-
# Super it up to probably raise a NoMethodError
|
29
|
-
super
|
30
|
-
end
|
31
|
-
end
|
32
|
-
|
33
|
-
# Custom implementation to merge each key separately.
|
34
|
-
def merge(other)
|
35
|
-
result = self.class.new
|
36
|
-
@keys.each do |key, value|
|
37
|
-
result.keys[key] = value.merge(other.send(key))
|
38
|
-
end
|
39
|
-
|
40
|
-
other.keys.each do |key, value|
|
41
|
-
if !@keys.has_key?(key)
|
42
|
-
# This is a key that the other configuration class has
|
43
|
-
# that we don't, so just copy it in.
|
44
|
-
result.keys[key] = value.dup
|
45
|
-
end
|
46
|
-
end
|
47
|
-
|
48
|
-
result
|
49
|
-
end
|
50
|
-
|
51
|
-
# Validates the configuration classes of this instance and raises an
|
52
|
-
# exception if they are invalid. If you are implementing a custom configuration
|
53
|
-
# class, the method you want to implement is {Base#validate}. This is
|
54
|
-
# the method that checks all the validation, not one which defines
|
55
|
-
# validation rules.
|
56
|
-
def validate!(env)
|
57
|
-
# Validate each of the configured classes and store the results into
|
58
|
-
# a hash.
|
59
|
-
errors = @keys.inject({}) do |container, data|
|
60
|
-
key, instance = data
|
61
|
-
recorder = ErrorRecorder.new
|
62
|
-
instance.validate(env, recorder)
|
63
|
-
container[key.to_sym] = recorder if !recorder.errors.empty?
|
64
|
-
container
|
65
|
-
end
|
66
|
-
|
67
|
-
return if errors.empty?
|
68
|
-
raise Errors::ConfigValidationFailed, :messages => Util::TemplateRenderer.render("config/validation_failed", :errors => errors)
|
69
|
-
end
|
70
|
-
end
|
71
|
-
end
|
72
|
-
end
|
@@ -1,14 +0,0 @@
|
|
1
|
-
module Vagrant
|
2
|
-
module Config
|
3
|
-
class VagrantConfig < Base
|
4
|
-
attr_accessor :dotfile_name
|
5
|
-
attr_accessor :host
|
6
|
-
|
7
|
-
def validate(env, errors)
|
8
|
-
[:dotfile_name, :host].each do |field|
|
9
|
-
errors.add(I18n.t("vagrant.config.common.error_empty", :field => field)) if !instance_variable_get("@#{field}".to_sym)
|
10
|
-
end
|
11
|
-
end
|
12
|
-
end
|
13
|
-
end
|
14
|
-
end
|
data/lib/vagrant/config/vm.rb
DELETED
@@ -1,168 +0,0 @@
|
|
1
|
-
require 'pathname'
|
2
|
-
|
3
|
-
require 'vagrant/config/vm/sub_vm'
|
4
|
-
require 'vagrant/config/vm/provisioner'
|
5
|
-
|
6
|
-
module Vagrant
|
7
|
-
module Config
|
8
|
-
class VMConfig < Base
|
9
|
-
attr_accessor :name
|
10
|
-
attr_accessor :auto_port_range
|
11
|
-
attr_accessor :box
|
12
|
-
attr_accessor :box_url
|
13
|
-
attr_accessor :base_mac
|
14
|
-
attr_accessor :boot_mode
|
15
|
-
attr_accessor :host_name
|
16
|
-
attr_reader :forwarded_ports
|
17
|
-
attr_reader :shared_folders
|
18
|
-
attr_reader :networks
|
19
|
-
attr_reader :provisioners
|
20
|
-
attr_reader :customizations
|
21
|
-
attr_accessor :guest
|
22
|
-
|
23
|
-
def initialize
|
24
|
-
@forwarded_ports = []
|
25
|
-
@shared_folders = {}
|
26
|
-
@networks = []
|
27
|
-
@provisioners = []
|
28
|
-
@customizations = []
|
29
|
-
end
|
30
|
-
|
31
|
-
# Custom merge method since some keys here are merged differently.
|
32
|
-
def merge(other)
|
33
|
-
result = super
|
34
|
-
result.instance_variable_set(:@forwarded_ports, @forwarded_ports + other.forwarded_ports)
|
35
|
-
result.instance_variable_set(:@shared_folders, @shared_folders.merge(other.shared_folders))
|
36
|
-
result.instance_variable_set(:@networks, @networks + other.networks)
|
37
|
-
result.instance_variable_set(:@provisioners, @provisioners + other.provisioners)
|
38
|
-
result.instance_variable_set(:@customizations, @customizations + other.customizations)
|
39
|
-
result
|
40
|
-
end
|
41
|
-
|
42
|
-
def forward_port(guestport, hostport, options=nil)
|
43
|
-
@forwarded_ports << {
|
44
|
-
:name => "#{guestport.to_s(32)}-#{hostport.to_s(32)}",
|
45
|
-
:guestport => guestport,
|
46
|
-
:hostport => hostport,
|
47
|
-
:protocol => :tcp,
|
48
|
-
:adapter => 1,
|
49
|
-
:auto => false
|
50
|
-
}.merge(options || {})
|
51
|
-
end
|
52
|
-
|
53
|
-
def share_folder(name, guestpath, hostpath, opts=nil)
|
54
|
-
@shared_folders[name] = {
|
55
|
-
:guestpath => guestpath.to_s,
|
56
|
-
:hostpath => hostpath.to_s,
|
57
|
-
:create => false,
|
58
|
-
:owner => nil,
|
59
|
-
:group => nil,
|
60
|
-
:nfs => false,
|
61
|
-
:transient => false,
|
62
|
-
:extra => nil
|
63
|
-
}.merge(opts || {})
|
64
|
-
end
|
65
|
-
|
66
|
-
def network(type, *args)
|
67
|
-
@networks << [type, args]
|
68
|
-
end
|
69
|
-
|
70
|
-
def provision(name, options=nil, &block)
|
71
|
-
@provisioners << Provisioner.new(name, options, &block)
|
72
|
-
end
|
73
|
-
|
74
|
-
# TODO: This argument should not be `nil` in the future.
|
75
|
-
# It is only defaulted to nil so that the deprecation error
|
76
|
-
# can be properly shown.
|
77
|
-
def customize(command=nil)
|
78
|
-
@customizations << command if command
|
79
|
-
end
|
80
|
-
|
81
|
-
def defined_vms
|
82
|
-
@defined_vms ||= {}
|
83
|
-
end
|
84
|
-
|
85
|
-
# This returns the keys of the sub-vms in the order they were
|
86
|
-
# defined.
|
87
|
-
def defined_vm_keys
|
88
|
-
@defined_vm_keys ||= []
|
89
|
-
end
|
90
|
-
|
91
|
-
def define(name, options=nil, &block)
|
92
|
-
name = name.to_sym
|
93
|
-
options ||= {}
|
94
|
-
|
95
|
-
# Add the name to the array of VM keys. This array is used to
|
96
|
-
# preserve the order in which VMs are defined.
|
97
|
-
defined_vm_keys << name
|
98
|
-
|
99
|
-
# Add the SubVM to the hash of defined VMs
|
100
|
-
defined_vms[name] ||= SubVM.new
|
101
|
-
defined_vms[name].options.merge!(options)
|
102
|
-
defined_vms[name].push_proc(&block) if block
|
103
|
-
end
|
104
|
-
|
105
|
-
def validate(env, errors)
|
106
|
-
errors.add(I18n.t("vagrant.config.vm.box_missing")) if !box
|
107
|
-
errors.add(I18n.t("vagrant.config.vm.box_not_found", :name => box)) if box && !box_url && !env.boxes.find(box)
|
108
|
-
errors.add(I18n.t("vagrant.config.vm.boot_mode_invalid")) if ![:headless, :gui].include?(boot_mode.to_sym)
|
109
|
-
errors.add(I18n.t("vagrant.config.vm.base_mac_invalid")) if env.boxes.find(box) && !base_mac
|
110
|
-
|
111
|
-
shared_folders.each do |name, options|
|
112
|
-
hostpath = Pathname.new(options[:hostpath]).expand_path(env.root_path)
|
113
|
-
|
114
|
-
if !hostpath.directory? && !options[:create]
|
115
|
-
errors.add(I18n.t("vagrant.config.vm.shared_folder_hostpath_missing",
|
116
|
-
:name => name,
|
117
|
-
:path => options[:hostpath]))
|
118
|
-
end
|
119
|
-
|
120
|
-
if options[:nfs] && (options[:owner] || options[:group])
|
121
|
-
# Owner/group don't work with NFS
|
122
|
-
errors.add(I18n.t("vagrant.config.vm.shared_folder_nfs_owner_group",
|
123
|
-
:name => name))
|
124
|
-
end
|
125
|
-
end
|
126
|
-
|
127
|
-
# Validate some basic networking
|
128
|
-
#
|
129
|
-
# TODO: One day we need to abstract this out, since in the future
|
130
|
-
# providers other than VirtualBox will not be able to satisfy
|
131
|
-
# all types of networks.
|
132
|
-
networks.each do |type, args|
|
133
|
-
if type == :hostonly && args[0] == :dhcp
|
134
|
-
# Valid. There is no real way this can be invalid at the moment.
|
135
|
-
elsif type == :hostonly
|
136
|
-
# Validate the host-only network
|
137
|
-
ip = args[0]
|
138
|
-
options = args[1] || {}
|
139
|
-
|
140
|
-
if !ip
|
141
|
-
errors.add(I18n.t("vagrant.config.vm.network_ip_required"))
|
142
|
-
else
|
143
|
-
ip_parts = ip.split(".")
|
144
|
-
|
145
|
-
if ip_parts.length != 4
|
146
|
-
errors.add(I18n.t("vagrant.config.vm.network_ip_invalid",
|
147
|
-
:ip => ip))
|
148
|
-
elsif ip_parts.last == "1"
|
149
|
-
errors.add(I18n.t("vagrant.config.vm.network_ip_ends_one",
|
150
|
-
:ip => ip))
|
151
|
-
end
|
152
|
-
end
|
153
|
-
elsif type == :bridged
|
154
|
-
else
|
155
|
-
# Invalid network type
|
156
|
-
errors.add(I18n.t("vagrant.config.vm.network_invalid",
|
157
|
-
:type => type.to_s))
|
158
|
-
end
|
159
|
-
end
|
160
|
-
|
161
|
-
# Each provisioner can validate itself
|
162
|
-
provisioners.each do |prov|
|
163
|
-
prov.validate(env, errors)
|
164
|
-
end
|
165
|
-
end
|
166
|
-
end
|
167
|
-
end
|
168
|
-
end
|
@@ -1,52 +0,0 @@
|
|
1
|
-
require 'log4r'
|
2
|
-
|
3
|
-
module Vagrant
|
4
|
-
module Config
|
5
|
-
class VMConfig < Base
|
6
|
-
# Represents a single configured provisioner for a VM.
|
7
|
-
class Provisioner
|
8
|
-
attr_reader :shortcut
|
9
|
-
attr_reader :provisioner
|
10
|
-
attr_reader :config
|
11
|
-
|
12
|
-
def initialize(shortcut, options=nil, &block)
|
13
|
-
@logger = Log4r::Logger.new("vagrant::config::vm::provisioner")
|
14
|
-
@logger.debug("Provisioner config: #{shortcut}")
|
15
|
-
@shortcut = shortcut
|
16
|
-
@provisioner = shortcut
|
17
|
-
@provisioner = Vagrant.provisioners.get(shortcut) if shortcut.is_a?(Symbol)
|
18
|
-
@config = nil
|
19
|
-
|
20
|
-
@logger.info("Provisioner class: #{provisioner}")
|
21
|
-
configure(options, &block) if @provisioner
|
22
|
-
end
|
23
|
-
|
24
|
-
# Configures the provisioner if it can (if it is valid).
|
25
|
-
def configure(options=nil, &block)
|
26
|
-
config_class = @provisioner.config_class
|
27
|
-
return if !config_class
|
28
|
-
|
29
|
-
@logger.debug("Configuring provisioner with: #{config_class}")
|
30
|
-
@config = config_class.new
|
31
|
-
@config.set_options(options) if options
|
32
|
-
block.call(@config) if block
|
33
|
-
end
|
34
|
-
|
35
|
-
def validate(env, errors)
|
36
|
-
if !provisioner
|
37
|
-
# If we don't have a provisioner then the whole thing is invalid.
|
38
|
-
errors.add(I18n.t("vagrant.config.vm.provisioner_not_found", :shortcut => shortcut))
|
39
|
-
return
|
40
|
-
end
|
41
|
-
|
42
|
-
if !(provisioner <= Provisioners::Base)
|
43
|
-
errors.add(I18n.t("vagrant.config.vm.provisioner_invalid_class", :shortcut => shortcut))
|
44
|
-
end
|
45
|
-
|
46
|
-
# Pass on validation to the provisioner config
|
47
|
-
config.validate(env, errors) if config
|
48
|
-
end
|
49
|
-
end
|
50
|
-
end
|
51
|
-
end
|
52
|
-
end
|
@@ -1,17 +0,0 @@
|
|
1
|
-
module Vagrant
|
2
|
-
module Config
|
3
|
-
class VMConfig < Base
|
4
|
-
# Represents a single sub-VM in a multi-VM environment.
|
5
|
-
class SubVM
|
6
|
-
include Util::StackedProcRunner
|
7
|
-
|
8
|
-
attr_reader :options
|
9
|
-
|
10
|
-
def initialize
|
11
|
-
@options = {}
|
12
|
-
end
|
13
|
-
end
|
14
|
-
end
|
15
|
-
end
|
16
|
-
end
|
17
|
-
|
data/lib/vagrant/data_store.rb
DELETED
@@ -1,92 +0,0 @@
|
|
1
|
-
require 'pathname'
|
2
|
-
|
3
|
-
require 'log4r'
|
4
|
-
|
5
|
-
module Vagrant
|
6
|
-
# The Vagrant data store is a key-value store which is persisted
|
7
|
-
# as JSON in a local file which is specified in the initializer.
|
8
|
-
# The data store itself is accessed via typical hash accessors: `[]`
|
9
|
-
# and `[]=`. If a key is set to `nil`, then it is removed from the
|
10
|
-
# datastore. The data store is only updated on disk when {#commit}
|
11
|
-
# is called on the data store itself.
|
12
|
-
#
|
13
|
-
# The data store is a hash with indifferent access, meaning that
|
14
|
-
# while all keys are persisted as strings in the JSON, you can access
|
15
|
-
# them back as either symbols or strings. Note that this is only true
|
16
|
-
# for the top-level data store. As soon as you set a hash inside the
|
17
|
-
# data store, unless you explicitly use a {Util::HashWithIndifferentAccess},
|
18
|
-
# it will be a regular hash.
|
19
|
-
class DataStore < Util::HashWithIndifferentAccess
|
20
|
-
attr_reader :file_path
|
21
|
-
|
22
|
-
def initialize(file_path)
|
23
|
-
@logger = Log4r::Logger.new("vagrant::datastore")
|
24
|
-
|
25
|
-
if file_path
|
26
|
-
@logger.info("Created: #{file_path}")
|
27
|
-
|
28
|
-
@file_path = Pathname.new(file_path)
|
29
|
-
if @file_path.exist?
|
30
|
-
raise Errors::DotfileIsDirectory if @file_path.directory?
|
31
|
-
|
32
|
-
begin
|
33
|
-
merge!(JSON.parse(@file_path.read))
|
34
|
-
rescue JSON::ParserError
|
35
|
-
# Ignore if the data is invalid in the file.
|
36
|
-
@logger.error("Data store contained invalid JSON. Ignoring.")
|
37
|
-
end
|
38
|
-
end
|
39
|
-
else
|
40
|
-
@logger.info("No file path. In-memory data store.")
|
41
|
-
@file_path = nil
|
42
|
-
end
|
43
|
-
end
|
44
|
-
|
45
|
-
# Commits any changes to the data to disk. Even if the data
|
46
|
-
# hasn't changed, it will be reserialized and written to disk.
|
47
|
-
def commit
|
48
|
-
if !@file_path
|
49
|
-
raise StandardError, "In-memory data stores can't be committed."
|
50
|
-
end
|
51
|
-
|
52
|
-
clean_nil_and_empties
|
53
|
-
|
54
|
-
if empty?
|
55
|
-
# Delete the file since an empty data store is not useful
|
56
|
-
@logger.info("Deleting data store since we're empty: #{@file_path}")
|
57
|
-
@file_path.delete if @file_path.exist?
|
58
|
-
else
|
59
|
-
@logger.info("Committing data to data store: #{@file_path}")
|
60
|
-
|
61
|
-
@file_path.open("w") do |f|
|
62
|
-
f.write(to_json)
|
63
|
-
f.fsync
|
64
|
-
end
|
65
|
-
end
|
66
|
-
end
|
67
|
-
|
68
|
-
protected
|
69
|
-
|
70
|
-
# Removes the "nil" and "empty?" values from the hash (children
|
71
|
-
# included) so that the final output JSON is cleaner.
|
72
|
-
def clean_nil_and_empties(hash=self)
|
73
|
-
# Clean depth first
|
74
|
-
hash.each do |k, v|
|
75
|
-
clean_nil_and_empties(v) if v.is_a?(Hash)
|
76
|
-
end
|
77
|
-
|
78
|
-
# Clean ourselves, knowing that any children have already been
|
79
|
-
# cleaned up
|
80
|
-
bad_keys = hash.inject([]) do |acc, data|
|
81
|
-
k,v = data
|
82
|
-
acc.push(k) if v.nil?
|
83
|
-
acc.push(k) if v.respond_to?(:empty?) && v.empty?
|
84
|
-
acc
|
85
|
-
end
|
86
|
-
|
87
|
-
bad_keys.each do |key|
|
88
|
-
hash.delete(key)
|
89
|
-
end
|
90
|
-
end
|
91
|
-
end
|
92
|
-
end
|