vagrant-lxc 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
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