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.
Files changed (423) hide show
  1. checksums.yaml +14 -6
  2. data/Gemfile +19 -14
  3. data/Gemfile.lock +10 -5
  4. data/README.md +18 -42
  5. data/development/Vagrantfile.1.0 +3 -2
  6. data/lib/vagrant-lxc/version.rb +1 -1
  7. data/lib/vagrant-lxc.rb +0 -2
  8. data/vagrant-lxc.gemspec +1 -14
  9. metadata +7 -540
  10. data/.gitmodules +0 -3
  11. data/bin/vagrant-lxc +0 -9
  12. data/lib/vendored_vagrant.rb +0 -9
  13. data/vendor/.gitkeep +0 -0
  14. data/vendor/vagrant/.gitignore +0 -31
  15. data/vendor/vagrant/.travis.yml +0 -7
  16. data/vendor/vagrant/.yardopts +0 -1
  17. data/vendor/vagrant/CHANGELOG.md +0 -803
  18. data/vendor/vagrant/Gemfile +0 -3
  19. data/vendor/vagrant/LICENSE +0 -21
  20. data/vendor/vagrant/README.md +0 -89
  21. data/vendor/vagrant/Rakefile +0 -18
  22. data/vendor/vagrant/bin/vagrant +0 -84
  23. data/vendor/vagrant/config/default.rb +0 -35
  24. data/vendor/vagrant/contrib/README.md +0 -12
  25. data/vendor/vagrant/contrib/bash/completion.sh +0 -3
  26. data/vendor/vagrant/contrib/emacs/vagrant.el +0 -8
  27. data/vendor/vagrant/contrib/vim/vagrantfile.vim +0 -9
  28. data/vendor/vagrant/keys/README.md +0 -17
  29. data/vendor/vagrant/keys/vagrant +0 -27
  30. data/vendor/vagrant/keys/vagrant.pub +0 -1
  31. data/vendor/vagrant/lib/vagrant/action/builder.rb +0 -154
  32. data/vendor/vagrant/lib/vagrant/action/builtin/box_add.rb +0 -79
  33. data/vendor/vagrant/lib/vagrant/action/builtin/call.rb +0 -67
  34. data/vendor/vagrant/lib/vagrant/action/builtin/config_validate.rb +0 -30
  35. data/vendor/vagrant/lib/vagrant/action/builtin/confirm.rb +0 -38
  36. data/vendor/vagrant/lib/vagrant/action/builtin/env_set.rb +0 -24
  37. data/vendor/vagrant/lib/vagrant/action/builtin/graceful_halt.rb +0 -73
  38. data/vendor/vagrant/lib/vagrant/action/builtin/handle_box_url.rb +0 -43
  39. data/vendor/vagrant/lib/vagrant/action/builtin/handle_forwarded_port_collisions.rb +0 -117
  40. data/vendor/vagrant/lib/vagrant/action/builtin/lock.rb +0 -57
  41. data/vendor/vagrant/lib/vagrant/action/builtin/nfs.rb +0 -117
  42. data/vendor/vagrant/lib/vagrant/action/builtin/provision.rb +0 -70
  43. data/vendor/vagrant/lib/vagrant/action/builtin/set_hostname.rb +0 -27
  44. data/vendor/vagrant/lib/vagrant/action/builtin/ssh_exec.rb +0 -42
  45. data/vendor/vagrant/lib/vagrant/action/builtin/ssh_run.rb +0 -43
  46. data/vendor/vagrant/lib/vagrant/action/general/package.rb +0 -102
  47. data/vendor/vagrant/lib/vagrant/action/hook.rb +0 -103
  48. data/vendor/vagrant/lib/vagrant/action/runner.rb +0 -69
  49. data/vendor/vagrant/lib/vagrant/action/warden.rb +0 -103
  50. data/vendor/vagrant/lib/vagrant/action.rb +0 -42
  51. data/vendor/vagrant/lib/vagrant/box.rb +0 -93
  52. data/vendor/vagrant/lib/vagrant/box_collection.rb +0 -315
  53. data/vendor/vagrant/lib/vagrant/cli.rb +0 -82
  54. data/vendor/vagrant/lib/vagrant/config/container.rb +0 -37
  55. data/vendor/vagrant/lib/vagrant/config/loader.rb +0 -222
  56. data/vendor/vagrant/lib/vagrant/config/v1/dummy_config.rb +0 -13
  57. data/vendor/vagrant/lib/vagrant/config/v1/loader.rb +0 -105
  58. data/vendor/vagrant/lib/vagrant/config/v1/root.rb +0 -60
  59. data/vendor/vagrant/lib/vagrant/config/v1.rb +0 -9
  60. data/vendor/vagrant/lib/vagrant/config/v2/dummy_config.rb +0 -13
  61. data/vendor/vagrant/lib/vagrant/config/v2/loader.rb +0 -141
  62. data/vendor/vagrant/lib/vagrant/config/v2/root.rb +0 -105
  63. data/vendor/vagrant/lib/vagrant/config/v2/util.rb +0 -21
  64. data/vendor/vagrant/lib/vagrant/config/v2.rb +0 -9
  65. data/vendor/vagrant/lib/vagrant/config/version_base.rb +0 -80
  66. data/vendor/vagrant/lib/vagrant/config.rb +0 -63
  67. data/vendor/vagrant/lib/vagrant/downloaders/base.rb +0 -22
  68. data/vendor/vagrant/lib/vagrant/downloaders/file.rb +0 -28
  69. data/vendor/vagrant/lib/vagrant/downloaders/http.rb +0 -116
  70. data/vendor/vagrant/lib/vagrant/downloaders.rb +0 -7
  71. data/vendor/vagrant/lib/vagrant/environment.rb +0 -729
  72. data/vendor/vagrant/lib/vagrant/errors.rb +0 -486
  73. data/vendor/vagrant/lib/vagrant/hosts.rb +0 -28
  74. data/vendor/vagrant/lib/vagrant/machine.rb +0 -325
  75. data/vendor/vagrant/lib/vagrant/machine_state.rb +0 -45
  76. data/vendor/vagrant/lib/vagrant/plugin/v1/command.rb +0 -169
  77. data/vendor/vagrant/lib/vagrant/plugin/v1/communicator.rb +0 -98
  78. data/vendor/vagrant/lib/vagrant/plugin/v1/config.rb +0 -112
  79. data/vendor/vagrant/lib/vagrant/plugin/v1/errors.rb +0 -15
  80. data/vendor/vagrant/lib/vagrant/plugin/v1/guest.rb +0 -92
  81. data/vendor/vagrant/lib/vagrant/plugin/v1/host.rb +0 -66
  82. data/vendor/vagrant/lib/vagrant/plugin/v1/manager.rb +0 -131
  83. data/vendor/vagrant/lib/vagrant/plugin/v1/plugin.rb +0 -229
  84. data/vendor/vagrant/lib/vagrant/plugin/v1/provider.rb +0 -68
  85. data/vendor/vagrant/lib/vagrant/plugin/v1/provisioner.rb +0 -50
  86. data/vendor/vagrant/lib/vagrant/plugin/v1.rb +0 -19
  87. data/vendor/vagrant/lib/vagrant/plugin/v2/command.rb +0 -234
  88. data/vendor/vagrant/lib/vagrant/plugin/v2/communicator.rb +0 -98
  89. data/vendor/vagrant/lib/vagrant/plugin/v2/components.rb +0 -29
  90. data/vendor/vagrant/lib/vagrant/plugin/v2/config.rb +0 -101
  91. data/vendor/vagrant/lib/vagrant/plugin/v2/errors.rb +0 -15
  92. data/vendor/vagrant/lib/vagrant/plugin/v2/guest.rb +0 -92
  93. data/vendor/vagrant/lib/vagrant/plugin/v2/host.rb +0 -66
  94. data/vendor/vagrant/lib/vagrant/plugin/v2/manager.rb +0 -158
  95. data/vendor/vagrant/lib/vagrant/plugin/v2/plugin.rb +0 -217
  96. data/vendor/vagrant/lib/vagrant/plugin/v2/provider.rb +0 -69
  97. data/vendor/vagrant/lib/vagrant/plugin/v2/provisioner.rb +0 -47
  98. data/vendor/vagrant/lib/vagrant/plugin/v2.rb +0 -22
  99. data/vendor/vagrant/lib/vagrant/plugin.rb +0 -6
  100. data/vendor/vagrant/lib/vagrant/registry.rb +0 -78
  101. data/vendor/vagrant/lib/vagrant/ssh.rb +0 -132
  102. data/vendor/vagrant/lib/vagrant/test_helpers.rb +0 -154
  103. data/vendor/vagrant/lib/vagrant/ui.rb +0 -170
  104. data/vendor/vagrant/lib/vagrant/util/ansi_escape_code_remover.rb +0 -34
  105. data/vendor/vagrant/lib/vagrant/util/busy.rb +0 -59
  106. data/vendor/vagrant/lib/vagrant/util/counter.rb +0 -24
  107. data/vendor/vagrant/lib/vagrant/util/file_checksum.rb +0 -38
  108. data/vendor/vagrant/lib/vagrant/util/file_mode.rb +0 -12
  109. data/vendor/vagrant/lib/vagrant/util/hash_with_indifferent_access.rb +0 -63
  110. data/vendor/vagrant/lib/vagrant/util/is_port_open.rb +0 -38
  111. data/vendor/vagrant/lib/vagrant/util/line_ending_helpers.rb +0 -14
  112. data/vendor/vagrant/lib/vagrant/util/network_ip.rb +0 -28
  113. data/vendor/vagrant/lib/vagrant/util/platform.rb +0 -68
  114. data/vendor/vagrant/lib/vagrant/util/retryable.rb +0 -31
  115. data/vendor/vagrant/lib/vagrant/util/safe_exec.rb +0 -36
  116. data/vendor/vagrant/lib/vagrant/util/safe_puts.rb +0 -31
  117. data/vendor/vagrant/lib/vagrant/util/scoped_hash_override.rb +0 -45
  118. data/vendor/vagrant/lib/vagrant/util/ssh.rb +0 -126
  119. data/vendor/vagrant/lib/vagrant/util/stacked_proc_runner.rb +0 -35
  120. data/vendor/vagrant/lib/vagrant/util/string_block_editor.rb +0 -75
  121. data/vendor/vagrant/lib/vagrant/util/subprocess.rb +0 -270
  122. data/vendor/vagrant/lib/vagrant/util/template_renderer.rb +0 -83
  123. data/vendor/vagrant/lib/vagrant/util/which.rb +0 -43
  124. data/vendor/vagrant/lib/vagrant/util.rb +0 -12
  125. data/vendor/vagrant/lib/vagrant/version.rb +0 -6
  126. data/vendor/vagrant/lib/vagrant.rb +0 -251
  127. data/vendor/vagrant/plugins/README.md +0 -5
  128. data/vendor/vagrant/plugins/commands/box/command/add.rb +0 -52
  129. data/vendor/vagrant/plugins/commands/box/command/list.rb +0 -41
  130. data/vendor/vagrant/plugins/commands/box/command/remove.rb +0 -37
  131. data/vendor/vagrant/plugins/commands/box/command/repackage.rb +0 -43
  132. data/vendor/vagrant/plugins/commands/box/command/root.rb +0 -75
  133. data/vendor/vagrant/plugins/commands/box/plugin.rb +0 -15
  134. data/vendor/vagrant/plugins/commands/destroy/command.rb +0 -31
  135. data/vendor/vagrant/plugins/commands/destroy/plugin.rb +0 -18
  136. data/vendor/vagrant/plugins/commands/halt/command.rb +0 -33
  137. data/vendor/vagrant/plugins/commands/halt/plugin.rb +0 -18
  138. data/vendor/vagrant/plugins/commands/init/command.rb +0 -40
  139. data/vendor/vagrant/plugins/commands/init/plugin.rb +0 -18
  140. data/vendor/vagrant/plugins/commands/package/command.rb +0 -78
  141. data/vendor/vagrant/plugins/commands/package/plugin.rb +0 -18
  142. data/vendor/vagrant/plugins/commands/plugin/action/bundler_check.rb +0 -25
  143. data/vendor/vagrant/plugins/commands/plugin/action/install_gem.rb +0 -70
  144. data/vendor/vagrant/plugins/commands/plugin/action/license_plugin.rb +0 -54
  145. data/vendor/vagrant/plugins/commands/plugin/action/list_plugins.rb +0 -54
  146. data/vendor/vagrant/plugins/commands/plugin/action/prune_gems.rb +0 -149
  147. data/vendor/vagrant/plugins/commands/plugin/action/uninstall_plugin.rb +0 -23
  148. data/vendor/vagrant/plugins/commands/plugin/action.rb +0 -52
  149. data/vendor/vagrant/plugins/commands/plugin/command/base.rb +0 -22
  150. data/vendor/vagrant/plugins/commands/plugin/command/install.rb +0 -39
  151. data/vendor/vagrant/plugins/commands/plugin/command/license.rb +0 -31
  152. data/vendor/vagrant/plugins/commands/plugin/command/list.rb +0 -28
  153. data/vendor/vagrant/plugins/commands/plugin/command/root.rb +0 -75
  154. data/vendor/vagrant/plugins/commands/plugin/command/uninstall.rb +0 -28
  155. data/vendor/vagrant/plugins/commands/plugin/gem_helper.rb +0 -74
  156. data/vendor/vagrant/plugins/commands/plugin/plugin.rb +0 -22
  157. data/vendor/vagrant/plugins/commands/plugin/state_file.rb +0 -57
  158. data/vendor/vagrant/plugins/commands/provision/command.rb +0 -34
  159. data/vendor/vagrant/plugins/commands/provision/plugin.rb +0 -18
  160. data/vendor/vagrant/plugins/commands/reload/command.rb +0 -37
  161. data/vendor/vagrant/plugins/commands/reload/plugin.rb +0 -18
  162. data/vendor/vagrant/plugins/commands/resume/command.rb +0 -25
  163. data/vendor/vagrant/plugins/commands/resume/plugin.rb +0 -17
  164. data/vendor/vagrant/plugins/commands/ssh/command.rb +0 -66
  165. data/vendor/vagrant/plugins/commands/ssh/plugin.rb +0 -17
  166. data/vendor/vagrant/plugins/commands/ssh_config/command.rb +0 -49
  167. data/vendor/vagrant/plugins/commands/ssh_config/plugin.rb +0 -18
  168. data/vendor/vagrant/plugins/commands/status/command.rb +0 -39
  169. data/vendor/vagrant/plugins/commands/status/plugin.rb +0 -18
  170. data/vendor/vagrant/plugins/commands/suspend/command.rb +0 -25
  171. data/vendor/vagrant/plugins/commands/suspend/plugin.rb +0 -18
  172. data/vendor/vagrant/plugins/commands/up/command.rb +0 -45
  173. data/vendor/vagrant/plugins/commands/up/plugin.rb +0 -17
  174. data/vendor/vagrant/plugins/commands/up/start_mixins.rb +0 -26
  175. data/vendor/vagrant/plugins/communicators/ssh/communicator.rb +0 -317
  176. data/vendor/vagrant/plugins/communicators/ssh/plugin.rb +0 -19
  177. data/vendor/vagrant/plugins/guests/arch/guest.rb +0 -41
  178. data/vendor/vagrant/plugins/guests/arch/plugin.rb +0 -15
  179. data/vendor/vagrant/plugins/guests/debian/guest.rb +0 -72
  180. data/vendor/vagrant/plugins/guests/debian/plugin.rb +0 -15
  181. data/vendor/vagrant/plugins/guests/fedora/guest.rb +0 -71
  182. data/vendor/vagrant/plugins/guests/fedora/plugin.rb +0 -15
  183. data/vendor/vagrant/plugins/guests/freebsd/config.rb +0 -13
  184. data/vendor/vagrant/plugins/guests/freebsd/guest.rb +0 -70
  185. data/vendor/vagrant/plugins/guests/freebsd/plugin.rb +0 -20
  186. data/vendor/vagrant/plugins/guests/gentoo/guest.rb +0 -51
  187. data/vendor/vagrant/plugins/guests/gentoo/plugin.rb +0 -15
  188. data/vendor/vagrant/plugins/guests/linux/config.rb +0 -13
  189. data/vendor/vagrant/plugins/guests/linux/guest.rb +0 -118
  190. data/vendor/vagrant/plugins/guests/linux/plugin.rb +0 -20
  191. data/vendor/vagrant/plugins/guests/openbsd/guest.rb +0 -13
  192. data/vendor/vagrant/plugins/guests/openbsd/plugin.rb +0 -15
  193. data/vendor/vagrant/plugins/guests/redhat/guest.rb +0 -74
  194. data/vendor/vagrant/plugins/guests/redhat/plugin.rb +0 -15
  195. data/vendor/vagrant/plugins/guests/solaris/config.rb +0 -18
  196. data/vendor/vagrant/plugins/guests/solaris/guest.rb +0 -73
  197. data/vendor/vagrant/plugins/guests/solaris/plugin.rb +0 -20
  198. data/vendor/vagrant/plugins/guests/suse/guest.rb +0 -24
  199. data/vendor/vagrant/plugins/guests/suse/plugin.rb +0 -15
  200. data/vendor/vagrant/plugins/guests/ubuntu/guest.rb +0 -44
  201. data/vendor/vagrant/plugins/guests/ubuntu/plugin.rb +0 -15
  202. data/vendor/vagrant/plugins/hosts/arch/host.rb +0 -68
  203. data/vendor/vagrant/plugins/hosts/arch/plugin.rb +0 -15
  204. data/vendor/vagrant/plugins/hosts/bsd/host.rb +0 -102
  205. data/vendor/vagrant/plugins/hosts/bsd/plugin.rb +0 -15
  206. data/vendor/vagrant/plugins/hosts/fedora/host.rb +0 -51
  207. data/vendor/vagrant/plugins/hosts/fedora/plugin.rb +0 -15
  208. data/vendor/vagrant/plugins/hosts/freebsd/host.rb +0 -43
  209. data/vendor/vagrant/plugins/hosts/freebsd/plugin.rb +0 -15
  210. data/vendor/vagrant/plugins/hosts/gentoo/host.rb +0 -24
  211. data/vendor/vagrant/plugins/hosts/gentoo/plugin.rb +0 -15
  212. data/vendor/vagrant/plugins/hosts/linux/host.rb +0 -95
  213. data/vendor/vagrant/plugins/hosts/linux/plugin.rb +0 -15
  214. data/vendor/vagrant/plugins/hosts/opensuse/host.rb +0 -34
  215. data/vendor/vagrant/plugins/hosts/opensuse/plugin.rb +0 -15
  216. data/vendor/vagrant/plugins/hosts/windows/host.rb +0 -17
  217. data/vendor/vagrant/plugins/hosts/windows/plugin.rb +0 -15
  218. data/vendor/vagrant/plugins/kernel_v1/config/nfs.rb +0 -20
  219. data/vendor/vagrant/plugins/kernel_v1/config/package.rb +0 -17
  220. data/vendor/vagrant/plugins/kernel_v1/config/ssh.rb +0 -46
  221. data/vendor/vagrant/plugins/kernel_v1/config/vagrant.rb +0 -31
  222. data/vendor/vagrant/plugins/kernel_v1/config/vm.rb +0 -184
  223. data/vendor/vagrant/plugins/kernel_v1/plugin.rb +0 -44
  224. data/vendor/vagrant/plugins/kernel_v2/config/nfs.rb +0 -10
  225. data/vendor/vagrant/plugins/kernel_v2/config/package.rb +0 -9
  226. data/vendor/vagrant/plugins/kernel_v2/config/ssh.rb +0 -35
  227. data/vendor/vagrant/plugins/kernel_v2/config/vagrant.rb +0 -9
  228. data/vendor/vagrant/plugins/kernel_v2/config/vm.rb +0 -314
  229. data/vendor/vagrant/plugins/kernel_v2/config/vm_provisioner.rb +0 -40
  230. data/vendor/vagrant/plugins/kernel_v2/config/vm_subvm.rb +0 -30
  231. data/vendor/vagrant/plugins/kernel_v2/plugin.rb +0 -44
  232. data/vendor/vagrant/plugins/providers/virtualbox/action/boot.rb +0 -49
  233. data/vendor/vagrant/plugins/providers/virtualbox/action/check_accessible.rb +0 -23
  234. data/vendor/vagrant/plugins/providers/virtualbox/action/check_created.rb +0 -21
  235. data/vendor/vagrant/plugins/providers/virtualbox/action/check_guest_additions.rb +0 -45
  236. data/vendor/vagrant/plugins/providers/virtualbox/action/check_running.rb +0 -21
  237. data/vendor/vagrant/plugins/providers/virtualbox/action/check_virtualbox.rb +0 -22
  238. data/vendor/vagrant/plugins/providers/virtualbox/action/clean_machine_folder.rb +0 -43
  239. data/vendor/vagrant/plugins/providers/virtualbox/action/clear_forwarded_ports.rb +0 -18
  240. data/vendor/vagrant/plugins/providers/virtualbox/action/clear_network_interfaces.rb +0 -31
  241. data/vendor/vagrant/plugins/providers/virtualbox/action/clear_shared_folders.rb +0 -17
  242. data/vendor/vagrant/plugins/providers/virtualbox/action/created.rb +0 -20
  243. data/vendor/vagrant/plugins/providers/virtualbox/action/customize.rb +0 -36
  244. data/vendor/vagrant/plugins/providers/virtualbox/action/destroy.rb +0 -19
  245. data/vendor/vagrant/plugins/providers/virtualbox/action/destroy_confirm.rb +0 -17
  246. data/vendor/vagrant/plugins/providers/virtualbox/action/destroy_unused_network_interfaces.rb +0 -16
  247. data/vendor/vagrant/plugins/providers/virtualbox/action/discard_state.rb +0 -20
  248. data/vendor/vagrant/plugins/providers/virtualbox/action/export.rb +0 -57
  249. data/vendor/vagrant/plugins/providers/virtualbox/action/forced_halt.rb +0 -25
  250. data/vendor/vagrant/plugins/providers/virtualbox/action/forward_ports.rb +0 -79
  251. data/vendor/vagrant/plugins/providers/virtualbox/action/import.rb +0 -51
  252. data/vendor/vagrant/plugins/providers/virtualbox/action/is_paused.rb +0 -20
  253. data/vendor/vagrant/plugins/providers/virtualbox/action/is_running.rb +0 -20
  254. data/vendor/vagrant/plugins/providers/virtualbox/action/is_saved.rb +0 -20
  255. data/vendor/vagrant/plugins/providers/virtualbox/action/match_mac_address.rb +0 -21
  256. data/vendor/vagrant/plugins/providers/virtualbox/action/message_not_created.rb +0 -16
  257. data/vendor/vagrant/plugins/providers/virtualbox/action/message_not_running.rb +0 -16
  258. data/vendor/vagrant/plugins/providers/virtualbox/action/message_will_not_destroy.rb +0 -17
  259. data/vendor/vagrant/plugins/providers/virtualbox/action/network.rb +0 -366
  260. data/vendor/vagrant/plugins/providers/virtualbox/action/package.rb +0 -20
  261. data/vendor/vagrant/plugins/providers/virtualbox/action/package_vagrantfile.rb +0 -33
  262. data/vendor/vagrant/plugins/providers/virtualbox/action/prepare_forwarded_port_collision_params.rb +0 -35
  263. data/vendor/vagrant/plugins/providers/virtualbox/action/prepare_nfs_settings.rb +0 -51
  264. data/vendor/vagrant/plugins/providers/virtualbox/action/prune_nfs_exports.rb +0 -20
  265. data/vendor/vagrant/plugins/providers/virtualbox/action/resume.rb +0 -25
  266. data/vendor/vagrant/plugins/providers/virtualbox/action/sane_defaults.rb +0 -87
  267. data/vendor/vagrant/plugins/providers/virtualbox/action/set_name.rb +0 -40
  268. data/vendor/vagrant/plugins/providers/virtualbox/action/setup_package_files.rb +0 -51
  269. data/vendor/vagrant/plugins/providers/virtualbox/action/share_folders.rb +0 -113
  270. data/vendor/vagrant/plugins/providers/virtualbox/action/suspend.rb +0 -20
  271. data/vendor/vagrant/plugins/providers/virtualbox/action.rb +0 -308
  272. data/vendor/vagrant/plugins/providers/virtualbox/config.rb +0 -82
  273. data/vendor/vagrant/plugins/providers/virtualbox/driver/base.rb +0 -344
  274. data/vendor/vagrant/plugins/providers/virtualbox/driver/meta.rb +0 -141
  275. data/vendor/vagrant/plugins/providers/virtualbox/driver/version_4_0.rb +0 -481
  276. data/vendor/vagrant/plugins/providers/virtualbox/driver/version_4_1.rb +0 -481
  277. data/vendor/vagrant/plugins/providers/virtualbox/driver/version_4_2.rb +0 -471
  278. data/vendor/vagrant/plugins/providers/virtualbox/model/forwarded_port.rb +0 -58
  279. data/vendor/vagrant/plugins/providers/virtualbox/plugin.rb +0 -42
  280. data/vendor/vagrant/plugins/providers/virtualbox/provider.rb +0 -92
  281. data/vendor/vagrant/plugins/providers/virtualbox/util/compile_forwarded_ports.rb +0 -31
  282. data/vendor/vagrant/plugins/provisioners/chef/config/base.rb +0 -65
  283. data/vendor/vagrant/plugins/provisioners/chef/config/chef_client.rb +0 -39
  284. data/vendor/vagrant/plugins/provisioners/chef/config/chef_solo.rb +0 -87
  285. data/vendor/vagrant/plugins/provisioners/chef/plugin.rb +0 -33
  286. data/vendor/vagrant/plugins/provisioners/chef/provisioner/base.rb +0 -91
  287. data/vendor/vagrant/plugins/provisioners/chef/provisioner/chef_client.rb +0 -103
  288. data/vendor/vagrant/plugins/provisioners/chef/provisioner/chef_solo.rb +0 -182
  289. data/vendor/vagrant/plugins/provisioners/puppet/config/puppet.rb +0 -70
  290. data/vendor/vagrant/plugins/provisioners/puppet/config/puppet_server.rb +0 -16
  291. data/vendor/vagrant/plugins/provisioners/puppet/plugin.rb +0 -33
  292. data/vendor/vagrant/plugins/provisioners/puppet/provisioner/puppet.rb +0 -110
  293. data/vendor/vagrant/plugins/provisioners/puppet/provisioner/puppet_server.rb +0 -67
  294. data/vendor/vagrant/plugins/provisioners/shell/config.rb +0 -46
  295. data/vendor/vagrant/plugins/provisioners/shell/plugin.rb +0 -23
  296. data/vendor/vagrant/plugins/provisioners/shell/provisioner.rb +0 -66
  297. data/vendor/vagrant/tasks/acceptance.rake +0 -113
  298. data/vendor/vagrant/tasks/bundler.rake +0 -3
  299. data/vendor/vagrant/tasks/test.rake +0 -20
  300. data/vendor/vagrant/templates/commands/init/Vagrantfile.erb +0 -111
  301. data/vendor/vagrant/templates/commands/ssh_config/config.erb +0 -16
  302. data/vendor/vagrant/templates/config/messages.erb +0 -14
  303. data/vendor/vagrant/templates/config/validation_failed.erb +0 -7
  304. data/vendor/vagrant/templates/guests/arch/network_dhcp.erb +0 -4
  305. data/vendor/vagrant/templates/guests/arch/network_static.erb +0 -6
  306. data/vendor/vagrant/templates/guests/debian/network_dhcp.erb +0 -11
  307. data/vendor/vagrant/templates/guests/debian/network_static.erb +0 -7
  308. data/vendor/vagrant/templates/guests/fedora/network_dhcp.erb +0 -6
  309. data/vendor/vagrant/templates/guests/fedora/network_static.erb +0 -13
  310. data/vendor/vagrant/templates/guests/freebsd/network_dhcp.erb +0 -3
  311. data/vendor/vagrant/templates/guests/freebsd/network_static.erb +0 -3
  312. data/vendor/vagrant/templates/guests/gentoo/network_dhcp.erb +0 -4
  313. data/vendor/vagrant/templates/guests/gentoo/network_static.erb +0 -4
  314. data/vendor/vagrant/templates/guests/redhat/network_dhcp.erb +0 -6
  315. data/vendor/vagrant/templates/guests/redhat/network_static.erb +0 -7
  316. data/vendor/vagrant/templates/locales/en.yml +0 -993
  317. data/vendor/vagrant/templates/nfs/exports.erb +0 -5
  318. data/vendor/vagrant/templates/nfs/exports_freebsd.erb +0 -5
  319. data/vendor/vagrant/templates/nfs/exports_linux.erb +0 -5
  320. data/vendor/vagrant/templates/package_Vagrantfile.erb +0 -11
  321. data/vendor/vagrant/templates/provisioners/chef_client/client.erb +0 -32
  322. data/vendor/vagrant/templates/provisioners/chef_solo/solo.erb +0 -25
  323. data/vendor/vagrant/templates/rgloader.rb +0 -9
  324. data/vendor/vagrant/test/acceptance/base.rb +0 -48
  325. data/vendor/vagrant/test/acceptance/box_test.rb +0 -99
  326. data/vendor/vagrant/test/acceptance/destroy_test.rb +0 -37
  327. data/vendor/vagrant/test/acceptance/halt_test.rb +0 -72
  328. data/vendor/vagrant/test/acceptance/init_test.rb +0 -33
  329. data/vendor/vagrant/test/acceptance/networking/host_only_test.rb +0 -37
  330. data/vendor/vagrant/test/acceptance/networking/port_forward_test.rb +0 -125
  331. data/vendor/vagrant/test/acceptance/package_test.rb +0 -46
  332. data/vendor/vagrant/test/acceptance/provisioning/basic_test.rb +0 -61
  333. data/vendor/vagrant/test/acceptance/provisioning/chef_solo_test.rb +0 -37
  334. data/vendor/vagrant/test/acceptance/provisioning/shell_test.rb +0 -53
  335. data/vendor/vagrant/test/acceptance/resume_test.rb +0 -17
  336. data/vendor/vagrant/test/acceptance/shared_folders_test.rb +0 -84
  337. data/vendor/vagrant/test/acceptance/skeletons/chef_solo_basic/README.md +0 -3
  338. data/vendor/vagrant/test/acceptance/skeletons/chef_solo_basic/cookbooks/basic/recipes/default.rb +0 -5
  339. data/vendor/vagrant/test/acceptance/skeletons/chef_solo_json/README.md +0 -3
  340. data/vendor/vagrant/test/acceptance/skeletons/chef_solo_json/cookbooks/basic/recipes/default.rb +0 -6
  341. data/vendor/vagrant/test/acceptance/skeletons/provisioner_multi/README.md +0 -3
  342. data/vendor/vagrant/test/acceptance/skeletons/provisioner_multi/cookbooks/basic/recipes/default.rb +0 -5
  343. data/vendor/vagrant/test/acceptance/ssh_test.rb +0 -46
  344. data/vendor/vagrant/test/acceptance/support/config.rb +0 -42
  345. data/vendor/vagrant/test/acceptance/support/isolated_environment.rb +0 -118
  346. data/vendor/vagrant/test/acceptance/support/matchers/have_color.rb +0 -9
  347. data/vendor/vagrant/test/acceptance/support/matchers/match_output.rb +0 -14
  348. data/vendor/vagrant/test/acceptance/support/matchers/succeed.rb +0 -14
  349. data/vendor/vagrant/test/acceptance/support/network_tests.rb +0 -29
  350. data/vendor/vagrant/test/acceptance/support/output.rb +0 -95
  351. data/vendor/vagrant/test/acceptance/support/shared/base_context.rb +0 -72
  352. data/vendor/vagrant/test/acceptance/support/shared/command_examples.rb +0 -33
  353. data/vendor/vagrant/test/acceptance/support/virtualbox.rb +0 -36
  354. data/vendor/vagrant/test/acceptance/suspend_test.rb +0 -56
  355. data/vendor/vagrant/test/acceptance/up_basic_test.rb +0 -33
  356. data/vendor/vagrant/test/acceptance/up_with_box_url.rb +0 -40
  357. data/vendor/vagrant/test/acceptance/vagrant_test.rb +0 -47
  358. data/vendor/vagrant/test/acceptance/version_test.rb +0 -15
  359. data/vendor/vagrant/test/config/acceptance_boxes.yml +0 -7
  360. data/vendor/vagrant/test/support/isolated_environment.rb +0 -46
  361. data/vendor/vagrant/test/support/tempdir.rb +0 -43
  362. data/vendor/vagrant/test/unit/base.rb +0 -27
  363. data/vendor/vagrant/test/unit/support/dummy_provider.rb +0 -16
  364. data/vendor/vagrant/test/unit/support/isolated_environment.rb +0 -177
  365. data/vendor/vagrant/test/unit/support/shared/base_context.rb +0 -104
  366. data/vendor/vagrant/test/unit/vagrant/action/builder_test.rb +0 -196
  367. data/vendor/vagrant/test/unit/vagrant/action/builtin/call_test.rb +0 -145
  368. data/vendor/vagrant/test/unit/vagrant/action/builtin/confirm_test.rb +0 -36
  369. data/vendor/vagrant/test/unit/vagrant/action/builtin/env_set_test.rb +0 -20
  370. data/vendor/vagrant/test/unit/vagrant/action/builtin/graceful_halt_test.rb +0 -61
  371. data/vendor/vagrant/test/unit/vagrant/action/builtin/lock_test.rb +0 -98
  372. data/vendor/vagrant/test/unit/vagrant/action/builtin/ssh_exec_test.rb +0 -57
  373. data/vendor/vagrant/test/unit/vagrant/action/hook_test.rb +0 -101
  374. data/vendor/vagrant/test/unit/vagrant/action/runner_test.rb +0 -71
  375. data/vendor/vagrant/test/unit/vagrant/action/warden_test.rb +0 -92
  376. data/vendor/vagrant/test/unit/vagrant/box_collection_test.rb +0 -224
  377. data/vendor/vagrant/test/unit/vagrant/box_test.rb +0 -109
  378. data/vendor/vagrant/test/unit/vagrant/cli_test.rb +0 -27
  379. data/vendor/vagrant/test/unit/vagrant/config/loader_test.rb +0 -184
  380. data/vendor/vagrant/test/unit/vagrant/config/v1/dummy_config_test.rb +0 -24
  381. data/vendor/vagrant/test/unit/vagrant/config/v1/loader_test.rb +0 -145
  382. data/vendor/vagrant/test/unit/vagrant/config/v1/root_test.rb +0 -40
  383. data/vendor/vagrant/test/unit/vagrant/config/v2/dummy_config_test.rb +0 -24
  384. data/vendor/vagrant/test/unit/vagrant/config/v2/loader_test.rb +0 -151
  385. data/vendor/vagrant/test/unit/vagrant/config/v2/root_test.rb +0 -97
  386. data/vendor/vagrant/test/unit/vagrant/config/v2/util_test.rb +0 -21
  387. data/vendor/vagrant/test/unit/vagrant/config_test.rb +0 -66
  388. data/vendor/vagrant/test/unit/vagrant/downloaders/base_test.rb +0 -14
  389. data/vendor/vagrant/test/unit/vagrant/downloaders/file_test.rb +0 -87
  390. data/vendor/vagrant/test/unit/vagrant/downloaders/http_test.rb +0 -23
  391. data/vendor/vagrant/test/unit/vagrant/environment_test.rb +0 -571
  392. data/vendor/vagrant/test/unit/vagrant/hosts_test.rb +0 -37
  393. data/vendor/vagrant/test/unit/vagrant/machine_state_test.rb +0 -26
  394. data/vendor/vagrant/test/unit/vagrant/machine_test.rb +0 -418
  395. data/vendor/vagrant/test/unit/vagrant/plugin/v1/command_test.rb +0 -143
  396. data/vendor/vagrant/test/unit/vagrant/plugin/v1/communicator_test.rb +0 -9
  397. data/vendor/vagrant/test/unit/vagrant/plugin/v1/config_test.rb +0 -50
  398. data/vendor/vagrant/test/unit/vagrant/plugin/v1/host_test.rb +0 -5
  399. data/vendor/vagrant/test/unit/vagrant/plugin/v1/manager_test.rb +0 -114
  400. data/vendor/vagrant/test/unit/vagrant/plugin/v1/plugin_test.rb +0 -267
  401. data/vendor/vagrant/test/unit/vagrant/plugin/v1/provider_test.rb +0 -18
  402. data/vendor/vagrant/test/unit/vagrant/plugin/v2/command_test.rb +0 -238
  403. data/vendor/vagrant/test/unit/vagrant/plugin/v2/communicator_test.rb +0 -9
  404. data/vendor/vagrant/test/unit/vagrant/plugin/v2/components_test.rb +0 -17
  405. data/vendor/vagrant/test/unit/vagrant/plugin/v2/config_test.rb +0 -60
  406. data/vendor/vagrant/test/unit/vagrant/plugin/v2/host_test.rb +0 -5
  407. data/vendor/vagrant/test/unit/vagrant/plugin/v2/manager_test.rb +0 -157
  408. data/vendor/vagrant/test/unit/vagrant/plugin/v2/plugin_test.rb +0 -287
  409. data/vendor/vagrant/test/unit/vagrant/plugin/v2/provider_test.rb +0 -18
  410. data/vendor/vagrant/test/unit/vagrant/registry_test.rb +0 -128
  411. data/vendor/vagrant/test/unit/vagrant/util/ansi_escape_code_remover_test.rb +0 -16
  412. data/vendor/vagrant/test/unit/vagrant/util/file_checksum_test.rb +0 -23
  413. data/vendor/vagrant/test/unit/vagrant/util/hash_with_indifferent_access_test.rb +0 -38
  414. data/vendor/vagrant/test/unit/vagrant/util/is_port_open_test.rb +0 -53
  415. data/vendor/vagrant/test/unit/vagrant/util/line_endings_helper_test.rb +0 -16
  416. data/vendor/vagrant/test/unit/vagrant/util/network_ip_test.rb +0 -17
  417. data/vendor/vagrant/test/unit/vagrant/util/retryable_test.rb +0 -106
  418. data/vendor/vagrant/test/unit/vagrant/util/scoped_hash_override_test.rb +0 -48
  419. data/vendor/vagrant/test/unit/vagrant/util/ssh_test.rb +0 -30
  420. data/vendor/vagrant/test/unit/vagrant/util/string_block_editor_test.rb +0 -98
  421. data/vendor/vagrant/test/unit/vagrant/util/which_test.rb +0 -43
  422. data/vendor/vagrant/test/unit/vagrant_test.rb +0 -56
  423. data/vendor/vagrant/vagrant.gemspec +0 -69
@@ -1,20 +0,0 @@
1
- module VagrantPlugins
2
- module ProviderVirtualBox
3
- module Action
4
- class Suspend
5
- def initialize(app, env)
6
- @app = app
7
- end
8
-
9
- def call(env)
10
- if env[:machine].provider.state.id == :running
11
- env[:ui].info I18n.t("vagrant.actions.vm.suspend.suspending")
12
- env[:machine].provider.driver.suspend
13
- end
14
-
15
- @app.call(env)
16
- end
17
- end
18
- end
19
- end
20
- end
@@ -1,308 +0,0 @@
1
- require "vagrant/action/builder"
2
-
3
- module VagrantPlugins
4
- module ProviderVirtualBox
5
- module Action
6
- autoload :Boot, File.expand_path("../action/boot", __FILE__)
7
- autoload :CheckAccessible, File.expand_path("../action/check_accessible", __FILE__)
8
- autoload :CheckCreated, File.expand_path("../action/check_created", __FILE__)
9
- autoload :CheckGuestAdditions, File.expand_path("../action/check_guest_additions", __FILE__)
10
- autoload :CheckRunning, File.expand_path("../action/check_running", __FILE__)
11
- autoload :CheckVirtualbox, File.expand_path("../action/check_virtualbox", __FILE__)
12
- autoload :CleanMachineFolder, File.expand_path("../action/clean_machine_folder", __FILE__)
13
- autoload :ClearForwardedPorts, File.expand_path("../action/clear_forwarded_ports", __FILE__)
14
- autoload :ClearNetworkInterfaces, File.expand_path("../action/clear_network_interfaces", __FILE__)
15
- autoload :ClearSharedFolders, File.expand_path("../action/clear_shared_folders", __FILE__)
16
- autoload :Created, File.expand_path("../action/created", __FILE__)
17
- autoload :Customize, File.expand_path("../action/customize", __FILE__)
18
- autoload :Destroy, File.expand_path("../action/destroy", __FILE__)
19
- autoload :DestroyConfirm, File.expand_path("../action/destroy_confirm", __FILE__)
20
- autoload :DestroyUnusedNetworkInterfaces, File.expand_path("../action/destroy_unused_network_interfaces", __FILE__)
21
- autoload :DiscardState, File.expand_path("../action/discard_state", __FILE__)
22
- autoload :Export, File.expand_path("../action/export", __FILE__)
23
- autoload :ForcedHalt, File.expand_path("../action/forced_halt", __FILE__)
24
- autoload :ForwardPorts, File.expand_path("../action/forward_ports", __FILE__)
25
- autoload :Import, File.expand_path("../action/import", __FILE__)
26
- autoload :IsPaused, File.expand_path("../action/is_paused", __FILE__)
27
- autoload :IsRunning, File.expand_path("../action/is_running", __FILE__)
28
- autoload :IsSaved, File.expand_path("../action/is_saved", __FILE__)
29
- autoload :MatchMACAddress, File.expand_path("../action/match_mac_address", __FILE__)
30
- autoload :MessageNotCreated, File.expand_path("../action/message_not_created", __FILE__)
31
- autoload :MessageNotRunning, File.expand_path("../action/message_not_running", __FILE__)
32
- autoload :MessageWillNotDestroy, File.expand_path("../action/message_will_not_destroy", __FILE__)
33
- autoload :Network, File.expand_path("../action/network", __FILE__)
34
- autoload :Package, File.expand_path("../action/package", __FILE__)
35
- autoload :PackageVagrantfile, File.expand_path("../action/package_vagrantfile", __FILE__)
36
- autoload :PrepareNFSSettings, File.expand_path("../action/prepare_nfs_settings", __FILE__)
37
- autoload :PrepareForwardedPortCollisionParams, File.expand_path("../action/prepare_forwarded_port_collision_params", __FILE__)
38
- autoload :PruneNFSExports, File.expand_path("../action/prune_nfs_exports", __FILE__)
39
- autoload :Resume, File.expand_path("../action/resume", __FILE__)
40
- autoload :SaneDefaults, File.expand_path("../action/sane_defaults", __FILE__)
41
- autoload :SetName, File.expand_path("../action/set_name", __FILE__)
42
- autoload :SetupPackageFiles, File.expand_path("../action/setup_package_files", __FILE__)
43
- autoload :ShareFolders, File.expand_path("../action/share_folders", __FILE__)
44
- autoload :Suspend, File.expand_path("../action/suspend", __FILE__)
45
-
46
- # Include the built-in modules so that we can use them as top-level
47
- # things.
48
- include Vagrant::Action::Builtin
49
-
50
- # This action boots the VM, assuming the VM is in a state that requires
51
- # a bootup (i.e. not saved).
52
- def self.action_boot
53
- Vagrant::Action::Builder.new.tap do |b|
54
- b.use CheckAccessible
55
- b.use CleanMachineFolder
56
- b.use SetName
57
- b.use ClearForwardedPorts
58
- b.use Provision
59
- b.use EnvSet, :port_collision_repair => true
60
- b.use PrepareForwardedPortCollisionParams
61
- b.use HandleForwardedPortCollisions
62
- b.use PruneNFSExports
63
- b.use NFS
64
- b.use PrepareNFSSettings
65
- b.use ClearSharedFolders
66
- b.use ShareFolders
67
- b.use ClearNetworkInterfaces
68
- b.use Network
69
- b.use ForwardPorts
70
- b.use SetHostname
71
- b.use SaneDefaults
72
- b.use Customize
73
- b.use Boot
74
- end
75
- end
76
-
77
- # This is the action that is primarily responsible for completely
78
- # freeing the resources of the underlying virtual machine.
79
- def self.action_destroy
80
- Vagrant::Action::Builder.new.tap do |b|
81
- b.use CheckVirtualbox
82
- b.use Call, Created do |env1, b2|
83
- if !env1[:result]
84
- b2.use MessageNotCreated
85
- next
86
- end
87
-
88
- b2.use Call, DestroyConfirm do |env2, b3|
89
- if env2[:result]
90
- b3.use ConfigValidate
91
- b3.use CheckAccessible
92
- b3.use EnvSet, :force_halt => true
93
- b3.use action_halt
94
- b3.use PruneNFSExports
95
- b3.use Destroy
96
- b3.use CleanMachineFolder
97
- b3.use DestroyUnusedNetworkInterfaces
98
- else
99
- b3.use MessageWillNotDestroy
100
- end
101
- end
102
- end
103
- end
104
- end
105
-
106
- # This is the action that is primarily responsible for halting
107
- # the virtual machine, gracefully or by force.
108
- def self.action_halt
109
- Vagrant::Action::Builder.new.tap do |b|
110
- b.use CheckVirtualbox
111
- b.use Call, Created do |env, b2|
112
- if env[:result]
113
- b2.use CheckAccessible
114
- b2.use DiscardState
115
-
116
- b2.use Call, IsPaused do |env2, b3|
117
- next if !env2[:result]
118
- b3.use Resume
119
- end
120
-
121
- b2.use Call, GracefulHalt, :poweroff, :running do |env2, b3|
122
- if !env2[:result]
123
- b3.use ForcedHalt
124
- end
125
- end
126
- else
127
- b2.use MessageNotCreated
128
- end
129
- end
130
- end
131
- end
132
-
133
- # This action packages the virtual machine into a single box file.
134
- def self.action_package
135
- Vagrant::Action::Builder.new.tap do |b|
136
- b.use CheckVirtualbox
137
- b.use Call, Created do |env1, b2|
138
- if !env1[:result]
139
- b2.use MessageNotCreated
140
- next
141
- end
142
-
143
- b2.use SetupPackageFiles
144
- b2.use CheckAccessible
145
- b2.use action_halt
146
- b2.use ClearForwardedPorts
147
- b2.use ClearSharedFolders
148
- b2.use Export
149
- b2.use PackageVagrantfile
150
- b2.use Package
151
- end
152
- end
153
- end
154
-
155
- # This action just runs the provisioners on the machine.
156
- def self.action_provision
157
- Vagrant::Action::Builder.new.tap do |b|
158
- b.use CheckVirtualbox
159
- b.use ConfigValidate
160
- b.use Call, Created do |env1, b2|
161
- if !env1[:result]
162
- b2.use MessageNotCreated
163
- next
164
- end
165
-
166
- b2.use Call, IsRunning do |env2, b3|
167
- if !env2[:result]
168
- b3.use MessageNotRunning
169
- next
170
- end
171
-
172
- b3.use CheckAccessible
173
- b3.use Provision
174
- end
175
- end
176
- end
177
- end
178
-
179
- # This action is responsible for reloading the machine, which
180
- # brings it down, sucks in new configuration, and brings the
181
- # machine back up with the new configuration.
182
- def self.action_reload
183
- Vagrant::Action::Builder.new.tap do |b|
184
- b.use CheckVirtualbox
185
- b.use Call, Created do |env1, b2|
186
- if !env1[:result]
187
- b2.use MessageNotCreated
188
- next
189
- end
190
-
191
- b2.use ConfigValidate
192
- b2.use action_halt
193
- b2.use action_start
194
- end
195
- end
196
- end
197
-
198
- # This is the action that is primarily responsible for resuming
199
- # suspended machines.
200
- def self.action_resume
201
- Vagrant::Action::Builder.new.tap do |b|
202
- b.use CheckVirtualbox
203
- b.use Call, Created do |env, b2|
204
- if env[:result]
205
- b2.use CheckAccessible
206
- b2.use EnvSet, :port_collision_repair => false
207
- b2.use PrepareForwardedPortCollisionParams
208
- b2.use HandleForwardedPortCollisions
209
- b2.use Resume
210
- else
211
- b2.use MessageNotCreated
212
- end
213
- end
214
- end
215
- end
216
-
217
- # This is the action that will exec into an SSH shell.
218
- def self.action_ssh
219
- Vagrant::Action::Builder.new.tap do |b|
220
- b.use CheckVirtualbox
221
- b.use CheckCreated
222
- b.use CheckAccessible
223
- b.use CheckRunning
224
- b.use SSHExec
225
- end
226
- end
227
-
228
- # This is the action that will run a single SSH command.
229
- def self.action_ssh_run
230
- Vagrant::Action::Builder.new.tap do |b|
231
- b.use CheckVirtualbox
232
- b.use CheckCreated
233
- b.use CheckAccessible
234
- b.use CheckRunning
235
- b.use SSHRun
236
- end
237
- end
238
-
239
- # This action starts a VM, assuming it is already imported and exists.
240
- # A precondition of this action is that the VM exists.
241
- def self.action_start
242
- Vagrant::Action::Builder.new.tap do |b|
243
- b.use CheckVirtualbox
244
- b.use ConfigValidate
245
- b.use Call, IsRunning do |env, b2|
246
- # If the VM is running, then our work here is done, exit
247
- next if env[:result]
248
-
249
- b2.use Call, IsSaved do |env2, b3|
250
- if env2[:result]
251
- # The VM is saved, so just resume it
252
- b3.use action_resume
253
- next
254
- end
255
-
256
- b3.use Call, IsPaused do |env3, b4|
257
- if env3[:result]
258
- b4.use Resume
259
- next
260
- end
261
-
262
- # The VM is not saved, so we must have to boot it up
263
- # like normal. Boot!
264
- b4.use action_boot
265
- end
266
- end
267
- end
268
- end
269
- end
270
-
271
- # This is the action that is primarily responsible for suspending
272
- # the virtual machine.
273
- def self.action_suspend
274
- Vagrant::Action::Builder.new.tap do |b|
275
- b.use CheckVirtualbox
276
- b.use Call, Created do |env, b2|
277
- if env[:result]
278
- b2.use CheckAccessible
279
- b2.use Suspend
280
- else
281
- b2.use MessageNotCreated
282
- end
283
- end
284
- end
285
- end
286
-
287
- # This action brings the machine up from nothing, including importing
288
- # the box, configuring metadata, and booting.
289
- def self.action_up
290
- Vagrant::Action::Builder.new.tap do |b|
291
- b.use CheckVirtualbox
292
- b.use ConfigValidate
293
- b.use Call, Created do |env, b2|
294
- # If the VM is NOT created yet, then do the setup steps
295
- if !env[:result]
296
- b2.use CheckAccessible
297
- b2.use HandleBoxUrl
298
- b2.use Import
299
- b2.use CheckGuestAdditions
300
- b2.use MatchMACAddress
301
- end
302
- end
303
- b.use action_start
304
- end
305
- end
306
- end
307
- end
308
- end
@@ -1,82 +0,0 @@
1
- module VagrantPlugins
2
- module ProviderVirtualBox
3
- class Config < Vagrant.plugin("2", :config)
4
- # Vagrant by default will make "smart" decisions to enable/disable
5
- # the NAT DNS proxy. If this is set to `true`, then the DNS proxy
6
- # will not be enabled, and it is up to the end user to do it.
7
- #
8
- # @return [Boolean]
9
- attr_accessor :auto_nat_dns_proxy
10
-
11
- # An array of customizations to make on the VM prior to booting it.
12
- #
13
- # @return [Array]
14
- attr_reader :customizations
15
-
16
- # If set to `true`, then VirtualBox will be launched with a GUI.
17
- #
18
- # @return [Boolean]
19
- attr_accessor :gui
20
-
21
- # This should be set to the name of the machine in the VirtualBox
22
- # GUI.
23
- #
24
- # @return [String]
25
- attr_accessor :name
26
-
27
- # The defined network adapters.
28
- #
29
- # @return [Hash]
30
- attr_reader :network_adapters
31
-
32
- def initialize
33
- @auto_nat_dns_proxy = UNSET_VALUE
34
- @customizations = []
35
- @name = UNSET_VALUE
36
- @network_adapters = {}
37
- @gui = UNSET_VALUE
38
-
39
- # We require that network adapter 1 is a NAT device.
40
- network_adapter(1, :nat)
41
- end
42
-
43
- # Customize the VM by calling `VBoxManage` with the given
44
- # arguments.
45
- #
46
- # When called multiple times, the customizations will be applied
47
- # in the order given.
48
- #
49
- # The special `:name` parameter in the command will be replaced with
50
- # the unique ID or name of the virtual machine. This is useful for
51
- # parameters to `modifyvm` and the like.
52
- #
53
- # @param [Array] command An array of arguments to pass to
54
- # VBoxManage.
55
- def customize(command)
56
- @customizations << command
57
- end
58
-
59
- # This defines a network adapter that will be added to the VirtualBox
60
- # virtual machine in the given slot.
61
- #
62
- # @param [Integer] slot The slot for this network adapter.
63
- # @param [Symbol] type The type of adapter.
64
- def network_adapter(slot, type, *args)
65
- @network_adapters[slot] = [type, args]
66
- end
67
-
68
- # This is the hook that is called to finalize the object before it
69
- # is put into use.
70
- def finalize!
71
- # Default is to auto the DNS proxy
72
- @auto_nat_dns_proxy = true if @auto_nat_dns_proxy == UNSET_VALUE
73
-
74
- # Default is to not show a GUI
75
- @gui = false if @gui == UNSET_VALUE
76
-
77
- # The default name is just nothing, and we default it
78
- @name = nil if @name == UNSET_VALUE
79
- end
80
- end
81
- end
82
- end
@@ -1,344 +0,0 @@
1
- require 'log4r'
2
-
3
- require 'vagrant/util/busy'
4
- require 'vagrant/util/platform'
5
- require 'vagrant/util/retryable'
6
- require 'vagrant/util/subprocess'
7
-
8
- module VagrantPlugins
9
- module ProviderVirtualBox
10
- module Driver
11
- # Base class for all VirtualBox drivers.
12
- #
13
- # This class provides useful tools for things such as executing
14
- # VBoxManage and handling SIGINTs and so on.
15
- class Base
16
- # Include this so we can use `Subprocess` more easily.
17
- include Vagrant::Util::Retryable
18
-
19
- def initialize
20
- @logger = Log4r::Logger.new("vagrant::provider::virtualbox::base")
21
-
22
- # This flag is used to keep track of interrupted state (SIGINT)
23
- @interrupted = false
24
-
25
- # Set the path to VBoxManage
26
- @vboxmanage_path = "VBoxManage"
27
-
28
- if Vagrant::Util::Platform.windows?
29
- @logger.debug("Windows. Trying VBOX_INSTALL_PATH for VBoxManage")
30
-
31
- # On Windows, we use the VBOX_INSTALL_PATH environmental
32
- # variable to find VBoxManage.
33
- if ENV.has_key?("VBOX_INSTALL_PATH")
34
- # Get the path.
35
- path = ENV["VBOX_INSTALL_PATH"]
36
- @logger.debug("VBOX_INSTALL_PATH value: #{path}")
37
-
38
- # There can actually be multiple paths in here, so we need to
39
- # split by the separator ";" and see which is a good one.
40
- path.split(";").each do |single|
41
- # Make sure it ends with a \
42
- single += "\\" if !single.end_with?("\\")
43
-
44
- # If the executable exists, then set it as the main path
45
- # and break out
46
- vboxmanage = "#{path}VBoxManage.exe"
47
- if File.file?(vboxmanage)
48
- @vboxmanage_path = vboxmanage
49
- break
50
- end
51
- end
52
- end
53
- end
54
-
55
- @logger.info("VBoxManage path: #{@vboxmanage_path}")
56
- end
57
-
58
- # Clears the forwarded ports that have been set on the virtual machine.
59
- def clear_forwarded_ports
60
- end
61
-
62
- # Clears the shared folders that have been set on the virtual machine.
63
- def clear_shared_folders
64
- end
65
-
66
- # Creates a DHCP server for a host only network.
67
- #
68
- # @param [String] network Name of the host-only network.
69
- # @param [Hash] options Options for the DHCP server.
70
- def create_dhcp_server(network, options)
71
- end
72
-
73
- # Creates a host only network with the given options.
74
- #
75
- # @param [Hash] options Options to create the host only network.
76
- # @return [Hash] The details of the host only network, including
77
- # keys `:name`, `:ip`, and `:netmask`
78
- def create_host_only_network(options)
79
- end
80
-
81
- # Deletes the virtual machine references by this driver.
82
- def delete
83
- end
84
-
85
- # Deletes any host only networks that aren't being used for anything.
86
- def delete_unused_host_only_networks
87
- end
88
-
89
- # Discards any saved state associated with this VM.
90
- def discard_saved_state
91
- end
92
-
93
- # Enables network adapters on the VM.
94
- #
95
- # The format of each adapter specification should be like so:
96
- #
97
- # {
98
- # :type => :hostonly,
99
- # :hostonly => "vboxnet0",
100
- # :mac_address => "tubes"
101
- # }
102
- #
103
- # This must support setting up both host only and bridged networks.
104
- #
105
- # @param [Array<Hash>] adapters Array of adapters to enable.
106
- def enable_adapters(adapters)
107
- end
108
-
109
- # Execute a raw command straight through to VBoxManage.
110
- #
111
- # @param [Array] command Command to execute.
112
- def execute_command(command)
113
- end
114
-
115
- # Exports the virtual machine to the given path.
116
- #
117
- # @param [String] path Path to the OVF file.
118
- # @yield [progress] Yields the block with the progress of the export.
119
- def export(path)
120
- end
121
-
122
- # Forwards a set of ports for a VM.
123
- #
124
- # This will not affect any previously set forwarded ports,
125
- # so be sure to delete those if you need to.
126
- #
127
- # The format of each port hash should be the following:
128
- #
129
- # {
130
- # :name => "foo",
131
- # :hostport => 8500,
132
- # :guestport => 80,
133
- # :adapter => 1,
134
- # :protocol => "tcp"
135
- # }
136
- #
137
- # Note that "adapter" and "protocol" are optional and will default
138
- # to 1 and "tcp" respectively.
139
- #
140
- # @param [Array<Hash>] ports An array of ports to set. See documentation
141
- # for more information on the format.
142
- def forward_ports(ports)
143
- end
144
-
145
- # Halts the virtual machine (pulls the plug).
146
- def halt
147
- end
148
-
149
- # Imports the VM from an OVF file.
150
- #
151
- # @param [String] ovf Path to the OVF file.
152
- # @return [String] UUID of the imported VM.
153
- def import(ovf)
154
- end
155
-
156
- # Returns a list of forwarded ports for a VM.
157
- #
158
- # @param [String] uuid UUID of the VM to read from, or `nil` if this
159
- # VM.
160
- # @param [Boolean] active_only If true, only VMs that are running will
161
- # be checked.
162
- # @return [Array<Array>]
163
- def read_forwarded_ports(uuid=nil, active_only=false)
164
- end
165
-
166
- # Returns a list of bridged interfaces.
167
- #
168
- # @return [Hash]
169
- def read_bridged_interfaces
170
- end
171
-
172
- # Returns the guest additions version that is installed on this VM.
173
- #
174
- # @return [String]
175
- def read_guest_additions_version
176
- end
177
-
178
- # Returns a list of available host only interfaces.
179
- #
180
- # @return [Hash]
181
- def read_host_only_interfaces
182
- end
183
-
184
- # Returns the MAC address of the first network interface.
185
- #
186
- # @return [String]
187
- def read_mac_address
188
- end
189
-
190
- # Returns the folder where VirtualBox places it's VMs.
191
- #
192
- # @return [String]
193
- def read_machine_folder
194
- end
195
-
196
- # Returns a list of network interfaces of the VM.
197
- #
198
- # @return [Hash]
199
- def read_network_interfaces
200
- end
201
-
202
- # Returns the current state of this VM.
203
- #
204
- # @return [Symbol]
205
- def read_state
206
- end
207
-
208
- # Returns a list of all forwarded ports in use by active
209
- # virtual machines.
210
- #
211
- # @return [Array]
212
- def read_used_ports
213
- end
214
-
215
- # Returns a list of all UUIDs of virtual machines currently
216
- # known by VirtualBox.
217
- #
218
- # @return [Array<String>]
219
- def read_vms
220
- end
221
-
222
- # Sets the MAC address of the first network adapter.
223
- #
224
- # @param [String] mac MAC address without any spaces/hyphens.
225
- def set_mac_address(mac)
226
- end
227
-
228
- # Share a set of folders on this VM.
229
- #
230
- # @param [Array<Hash>] folders
231
- def share_folders(folders)
232
- end
233
-
234
- # Reads the SSH port of this VM.
235
- #
236
- # @param [Integer] expected Expected guest port of SSH.
237
- def ssh_port(expected)
238
- end
239
-
240
- # Starts the virtual machine.
241
- #
242
- # @param [String] mode Mode to boot the VM. Either "headless"
243
- # or "gui"
244
- def start(mode)
245
- end
246
-
247
- # Suspend the virtual machine.
248
- def suspend
249
- end
250
-
251
- # Verifies that the driver is ready to accept work.
252
- #
253
- # This should raise a VagrantError if things are not ready.
254
- def verify!
255
- end
256
-
257
- # Verifies that an image can be imported properly.
258
- #
259
- # @param [String] path Path to an OVF file.
260
- # @return [Boolean]
261
- def verify_image(path)
262
- end
263
-
264
- # Checks if a VM with the given UUID exists.
265
- #
266
- # @return [Boolean]
267
- def vm_exists?(uuid)
268
- end
269
-
270
- # Execute the given subcommand for VBoxManage and return the output.
271
- def execute(*command, &block)
272
- # Get the options hash if it exists
273
- opts = {}
274
- opts = command.pop if command.last.is_a?(Hash)
275
-
276
- tries = 0
277
- tries = 3 if opts[:retryable]
278
-
279
- # Variable to store our execution result
280
- r = nil
281
-
282
- retryable(:on => Vagrant::Errors::VBoxManageError, :tries => tries, :sleep => 1) do
283
- # Execute the command
284
- r = raw(*command, &block)
285
-
286
- # If the command was a failure, then raise an exception that is
287
- # nicely handled by Vagrant.
288
- if r.exit_code != 0
289
- if @interrupted
290
- @logger.info("Exit code != 0, but interrupted. Ignoring.")
291
- else
292
- raise Vagrant::Errors::VBoxManageError, :command => command.inspect
293
- end
294
- else
295
- # Sometimes, VBoxManage fails but doesn't actual return a non-zero
296
- # exit code. For this we inspect the output and determine if an error
297
- # occurred.
298
- if r.stderr =~ /VBoxManage: error:/
299
- @logger.info("VBoxManage error text found, assuming error.")
300
- raise Vagrant::Errors::VBoxManageError, :command => command.inspect
301
- end
302
- end
303
- end
304
-
305
- # Return the output, making sure to replace any Windows-style
306
- # newlines with Unix-style.
307
- r.stdout.gsub("\r\n", "\n")
308
- end
309
-
310
- # Executes a command and returns the raw result object.
311
- def raw(*command, &block)
312
- int_callback = lambda do
313
- @interrupted = true
314
- @logger.info("Interrupted.")
315
- end
316
-
317
- # Append in the options for subprocess
318
- command << { :notify => [:stdout, :stderr] }
319
-
320
- # The following is a workaround for a combined VirtualBox and
321
- # Mac OS X 10.8 bug:
322
- #
323
- # Remove the DYLD_LIBRARY_PATH environmental variable on Mac. This
324
- # is to fix a bug in Mac OS X 10.8 where a warning is printed to the
325
- # console if this is set when executing certain programs, which
326
- # can cause some VBoxManage commands to break because they work
327
- # by just reading stdout and don't expect the OS to just inject
328
- # garbage into it.
329
- old_dyld_lib_path = ENV.delete("DYLD_LIBRARY_PATH")
330
- old_ld_lib_path = ENV.delete("LD_LIBRARY_PATH")
331
-
332
- Vagrant::Util::Busy.busy(int_callback) do
333
- Vagrant::Util::Subprocess.execute(@vboxmanage_path, *command, &block)
334
- end
335
- ensure
336
- # Reset the library path if it was set before. See above comments
337
- # for more information on why this was unset in the first place.
338
- ENV["DYLD_LIBRARY_PATH"] = old_dyld_lib_path if old_dyld_lib_path
339
- ENV["LD_LIBRARY_PATH"] = old_ld_lib_path if old_ld_lib_path
340
- end
341
- end
342
- end
343
- end
344
- end