tnargav 1.2.3 → 1.3.3

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 (380) hide show
  1. data/.gitignore +19 -3
  2. data/CHANGELOG.md +311 -0
  3. data/bin/vagrant +12 -0
  4. data/config/default.rb +2 -4
  5. data/keys/README.md +0 -7
  6. data/lib/vagrant.rb +7 -0
  7. data/lib/vagrant/action.rb +2 -0
  8. data/lib/vagrant/action/builtin/box_add.rb +12 -1
  9. data/lib/vagrant/action/builtin/confirm.rb +1 -0
  10. data/lib/vagrant/action/builtin/graceful_halt.rb +9 -5
  11. data/lib/vagrant/action/builtin/handle_box_url.rb +16 -7
  12. data/lib/vagrant/action/builtin/handle_forwarded_port_collisions.rb +1 -1
  13. data/lib/vagrant/action/builtin/mixin_provisioners.rb +43 -0
  14. data/lib/vagrant/action/builtin/nfs.rb +18 -8
  15. data/lib/vagrant/action/builtin/provision.rb +30 -21
  16. data/lib/vagrant/action/builtin/provisioner_cleanup.rb +35 -0
  17. data/lib/vagrant/action/builtin/wait_for_communicator.rb +84 -0
  18. data/lib/vagrant/action/warden.rb +2 -1
  19. data/lib/vagrant/box_collection.rb +62 -44
  20. data/lib/vagrant/cli.rb +1 -9
  21. data/lib/vagrant/config/v2/root.rb +6 -0
  22. data/lib/vagrant/environment.rb +27 -51
  23. data/lib/vagrant/errors.rb +33 -1
  24. data/lib/vagrant/guest.rb +2 -2
  25. data/lib/vagrant/machine.rb +14 -22
  26. data/lib/vagrant/plugin/v2/command.rb +4 -1
  27. data/lib/vagrant/plugin/v2/communicator.rb +21 -0
  28. data/lib/vagrant/plugin/v2/guest.rb +1 -56
  29. data/lib/vagrant/plugin/v2/provisioner.rb +6 -0
  30. data/lib/vagrant/util/downloader.rb +7 -2
  31. data/lib/vagrant/util/platform.rb +43 -0
  32. data/lib/vagrant/util/ssh.rb +5 -0
  33. data/lib/vagrant/util/subprocess.rb +16 -2
  34. data/lib/vagrant/version.rb +1 -1
  35. data/plugins/commands/box/command/remove.rb +22 -2
  36. data/plugins/commands/box/command/repackage.rb +1 -1
  37. data/plugins/commands/destroy/command.rb +8 -3
  38. data/plugins/commands/help/command.rb +12 -0
  39. data/plugins/commands/help/plugin.rb +17 -0
  40. data/plugins/commands/plugin/action.rb +11 -0
  41. data/plugins/commands/plugin/action/install_gem.rb +26 -1
  42. data/plugins/commands/plugin/action/plugin_exists_check.rb +26 -0
  43. data/plugins/commands/plugin/command/install.rb +4 -21
  44. data/plugins/commands/plugin/command/mixin_install_opts.rb +30 -0
  45. data/plugins/commands/plugin/command/root.rb +5 -0
  46. data/plugins/commands/plugin/command/update.rb +41 -0
  47. data/plugins/commands/reload/command.rb +4 -0
  48. data/plugins/commands/status/command.rb +6 -1
  49. data/plugins/commands/up/command.rb +10 -0
  50. data/plugins/commands/up/start_mixins.rb +12 -1
  51. data/plugins/communicators/ssh/communicator.rb +61 -6
  52. data/plugins/guests/arch/cap/change_host_name.rb +1 -2
  53. data/plugins/guests/arch/cap/configure_networks.rb +6 -0
  54. data/plugins/guests/coreos/cap/change_host_name.rb +15 -0
  55. data/plugins/guests/coreos/cap/configure_networks.rb +72 -0
  56. data/plugins/guests/coreos/guest.rb +9 -0
  57. data/plugins/guests/coreos/plugin.rb +25 -0
  58. data/plugins/guests/darwin/cap/change_host_name.rb +14 -0
  59. data/plugins/guests/darwin/cap/configure_networks.rb +52 -0
  60. data/plugins/guests/darwin/cap/halt.rb +16 -0
  61. data/plugins/guests/darwin/cap/mount_nfs_folder.rb +25 -0
  62. data/plugins/guests/darwin/cap/mount_vmware_shared_folder.rb +36 -0
  63. data/plugins/guests/darwin/cap/shell_expand_guest_path.rb +26 -0
  64. data/plugins/guests/darwin/cap/verify_vmware_hgfs.rb +12 -0
  65. data/plugins/guests/darwin/guest.rb +15 -0
  66. data/plugins/guests/darwin/plugin.rb +50 -0
  67. data/plugins/guests/debian/cap/change_host_name.rb +1 -0
  68. data/plugins/guests/gentoo/guest.rb +1 -1
  69. data/plugins/guests/linux/cap/mount_nfs.rb +9 -1
  70. data/plugins/guests/linux/cap/mount_virtualbox_shared_folder.rb +26 -7
  71. data/plugins/guests/linux/cap/shell_expand_guest_path.rb +4 -1
  72. data/plugins/guests/openbsd/cap/change_host_name.rb +14 -0
  73. data/plugins/guests/openbsd/cap/configure_networks.rb +40 -0
  74. data/plugins/guests/openbsd/cap/mount_nfs_folder.rb +14 -0
  75. data/plugins/guests/openbsd/plugin.rb +15 -0
  76. data/plugins/guests/solaris/cap/halt.rb +2 -1
  77. data/plugins/guests/solaris/cap/mount_virtualbox_shared_folder.rb +4 -1
  78. data/plugins/guests/solaris11/cap/change_host_name.rb +25 -0
  79. data/plugins/guests/solaris11/cap/configure_networks.rb +32 -0
  80. data/plugins/guests/solaris11/cap/halt.rb +26 -0
  81. data/plugins/guests/solaris11/cap/mount_virtualbox_shared_folder.rb +35 -0
  82. data/plugins/guests/solaris11/config.rb +22 -0
  83. data/plugins/guests/solaris11/guest.rb +15 -0
  84. data/plugins/guests/solaris11/plugin.rb +44 -0
  85. data/plugins/guests/suse/cap/configure_networks.rb +60 -0
  86. data/plugins/guests/suse/plugin.rb +5 -0
  87. data/plugins/guests/ubuntu/cap/change_host_name.rb +1 -0
  88. data/plugins/guests/ubuntu/cap/mount_nfs.rb +19 -0
  89. data/plugins/guests/ubuntu/cap/mount_virtualbox_shared_folder.rb +14 -0
  90. data/plugins/guests/ubuntu/guest.rb +0 -19
  91. data/plugins/guests/ubuntu/plugin.rb +10 -0
  92. data/plugins/hosts/arch/host.rb +5 -28
  93. data/plugins/hosts/bsd/host.rb +83 -7
  94. data/plugins/hosts/fedora/host.rb +12 -6
  95. data/plugins/hosts/gentoo/host.rb +3 -1
  96. data/plugins/hosts/linux/host.rb +42 -9
  97. data/plugins/hosts/opensuse/host.rb +3 -1
  98. data/plugins/hosts/slackware/host.rb +26 -0
  99. data/plugins/hosts/slackware/plugin.rb +15 -0
  100. data/plugins/kernel_v1/config/ssh.rb +2 -2
  101. data/plugins/kernel_v2/config/ssh.rb +8 -16
  102. data/plugins/kernel_v2/config/vm.rb +68 -11
  103. data/plugins/providers/virtualbox/action.rb +15 -2
  104. data/plugins/providers/virtualbox/action/boot.rb +0 -26
  105. data/plugins/providers/virtualbox/action/clear_network_interfaces.rb +1 -1
  106. data/plugins/providers/virtualbox/action/customize.rb +10 -3
  107. data/plugins/providers/virtualbox/action/destroy_unused_network_interfaces.rb +8 -1
  108. data/plugins/providers/virtualbox/action/forward_ports.rb +1 -0
  109. data/plugins/providers/virtualbox/action/import.rb +3 -0
  110. data/plugins/providers/virtualbox/action/network.rb +14 -2
  111. data/plugins/providers/virtualbox/action/prepare_nfs_settings.rb +7 -2
  112. data/plugins/providers/virtualbox/action/set_name.rb +13 -1
  113. data/plugins/providers/virtualbox/config.rb +39 -2
  114. data/plugins/providers/virtualbox/driver/base.rb +5 -0
  115. data/plugins/providers/virtualbox/driver/meta.rb +7 -1
  116. data/plugins/providers/virtualbox/driver/version_4_0.rb +2 -2
  117. data/plugins/providers/virtualbox/driver/version_4_1.rb +2 -2
  118. data/plugins/providers/virtualbox/driver/version_4_2.rb +17 -0
  119. data/plugins/providers/virtualbox/model/forwarded_port.rb +7 -1
  120. data/plugins/providers/virtualbox/util/compile_forwarded_ports.rb +5 -1
  121. data/plugins/provisioners/ansible/config.rb +40 -23
  122. data/plugins/provisioners/ansible/provisioner.rb +68 -13
  123. data/plugins/provisioners/cfengine/cap/debian/cfengine_install.rb +1 -1
  124. data/plugins/provisioners/cfengine/cap/redhat/cfengine_install.rb +1 -1
  125. data/plugins/provisioners/cfengine/config.rb +7 -1
  126. data/plugins/provisioners/cfengine/provisioner.rb +4 -5
  127. data/plugins/provisioners/chef/config/base.rb +31 -0
  128. data/plugins/provisioners/chef/config/chef_client.rb +15 -6
  129. data/plugins/provisioners/chef/config/chef_solo.rb +18 -11
  130. data/plugins/provisioners/chef/provisioner/base.rb +23 -3
  131. data/plugins/provisioners/chef/provisioner/chef_client.rb +25 -6
  132. data/plugins/provisioners/chef/provisioner/chef_solo.rb +16 -13
  133. data/plugins/provisioners/file/config.rb +29 -0
  134. data/plugins/provisioners/file/plugin.rb +23 -0
  135. data/plugins/provisioners/file/provisioner.rb +16 -0
  136. data/plugins/provisioners/puppet/config/puppet.rb +4 -1
  137. data/plugins/provisioners/puppet/provisioner/puppet.rb +15 -9
  138. data/plugins/provisioners/puppet/provisioner/puppet_server.rb +9 -2
  139. data/plugins/provisioners/salt/bootstrap-salt.sh +6 -0
  140. data/plugins/provisioners/salt/config.rb +105 -0
  141. data/plugins/provisioners/salt/errors.rb +11 -0
  142. data/plugins/provisioners/salt/plugin.rb +22 -0
  143. data/plugins/provisioners/salt/provisioner.rb +249 -0
  144. data/plugins/provisioners/shell/config.rb +11 -2
  145. data/plugins/provisioners/shell/provisioner.rb +15 -3
  146. data/scripts/website_push_docs.sh +12 -0
  147. data/scripts/website_push_www.sh +12 -0
  148. data/templates/commands/init/Vagrantfile.erb +5 -2
  149. data/templates/commands/ssh_config/config.erb +4 -0
  150. data/templates/guests/coreos/etcd.service.erb +10 -0
  151. data/templates/guests/fedora/network_static.erb +2 -3
  152. data/templates/guests/openbsd/network_dhcp.erb +1 -0
  153. data/templates/guests/openbsd/network_static.erb +1 -0
  154. data/templates/guests/suse/network_dhcp.erb +6 -0
  155. data/templates/guests/suse/network_static.erb +10 -0
  156. data/templates/locales/en.yml +123 -13
  157. data/templates/nfs/exports.erb +4 -4
  158. data/templates/nfs/exports_freebsd.erb +4 -4
  159. data/templates/nfs/exports_linux.erb +5 -3
  160. data/templates/provisioners/chef_client/client.erb +9 -0
  161. data/templates/provisioners/chef_solo/solo.erb +19 -1
  162. data/test/unit/vagrant/action/builtin/graceful_halt_test.rb +1 -2
  163. data/test/unit/vagrant/cli_test.rb +1 -0
  164. data/test/unit/vagrant/config/v2/root_test.rb +18 -0
  165. data/test/unit/vagrant/environment_test.rb +25 -0
  166. data/test/unit/vagrant/util/downloader_test.rb +4 -4
  167. data/test/unit/vagrant_test.rb +18 -0
  168. data/website/docs/.buildpacks +2 -0
  169. data/website/docs/Gemfile +13 -0
  170. data/website/docs/Gemfile.lock +141 -0
  171. data/website/docs/Procfile +1 -0
  172. data/website/docs/README.md +26 -0
  173. data/website/docs/config.rb +78 -0
  174. data/website/docs/config.ru +44 -0
  175. data/website/docs/helpers/sidebar_helpers.rb +19 -0
  176. data/website/docs/lib/redirect_to_latest.rb +25 -0
  177. data/website/docs/lib/redirect_v1_docs.rb +26 -0
  178. data/website/docs/source/404.html.erb +7 -0
  179. data/website/docs/source/images/bullet_1.png +0 -0
  180. data/website/docs/source/images/bullet_2.png +0 -0
  181. data/website/docs/source/images/bullet_3.png +0 -0
  182. data/website/docs/source/images/customers.png +0 -0
  183. data/website/docs/source/images/customers_small.png +0 -0
  184. data/website/docs/source/images/footer_background.png +0 -0
  185. data/website/docs/source/images/footer_hashi_logo.png +0 -0
  186. data/website/docs/source/images/footer_vagrant_logo.png +0 -0
  187. data/website/docs/source/images/get_started_background.png +0 -0
  188. data/website/docs/source/images/icon_caution.png +0 -0
  189. data/website/docs/source/images/logo_docs.png +0 -0
  190. data/website/docs/source/images/logo_docs_small.png +0 -0
  191. data/website/docs/source/images/logo_small.png +0 -0
  192. data/website/docs/source/images/logo_vagrant.png +0 -0
  193. data/website/docs/source/images/open_close.png +0 -0
  194. data/website/docs/source/images/search_icon.png +0 -0
  195. data/website/docs/source/images/sidebar_background_docs.png +0 -0
  196. data/website/docs/source/images/sidebar_background_inner.png +0 -0
  197. data/website/docs/source/images/steps_background.png +0 -0
  198. data/website/docs/source/images/vagrant_header_background.png +0 -0
  199. data/website/docs/source/index.html.erb +0 -0
  200. data/website/docs/source/javascripts/backstretch.js +4 -0
  201. data/website/docs/source/javascripts/bootstrap.min.js +7 -0
  202. data/website/docs/source/javascripts/fittext.js +43 -0
  203. data/website/docs/source/javascripts/grid-overlay.js +161 -0
  204. data/website/docs/source/javascripts/jquery.js +2 -0
  205. data/website/docs/source/javascripts/less-1.3.0.min.js +9 -0
  206. data/website/docs/source/javascripts/modernizr.js +1384 -0
  207. data/website/docs/source/javascripts/vagrantup.js +15 -0
  208. data/website/docs/source/layouts/layout.erb +266 -0
  209. data/website/docs/source/stylesheets/_base.less +317 -0
  210. data/website/docs/source/stylesheets/_components.less +74 -0
  211. data/website/docs/source/stylesheets/_footer.less +101 -0
  212. data/website/docs/source/stylesheets/_media-queries.less +452 -0
  213. data/website/docs/source/stylesheets/_mixins.less +174 -0
  214. data/website/docs/source/stylesheets/_nav.less +71 -0
  215. data/website/docs/source/stylesheets/_pages.less +276 -0
  216. data/website/docs/source/stylesheets/_sidebar.less +136 -0
  217. data/website/docs/source/stylesheets/_type.less +36 -0
  218. data/website/docs/source/stylesheets/_variables.less +39 -0
  219. data/website/docs/source/stylesheets/bootstrap.css +5946 -0
  220. data/website/docs/source/stylesheets/vagrantup.less +16 -0
  221. data/website/docs/source/v2/boxes.html.md +78 -0
  222. data/website/docs/source/v2/boxes/format.html.md +32 -0
  223. data/website/docs/source/v2/cli/box.html.md +62 -0
  224. data/website/docs/source/v2/cli/destroy.html.md +20 -0
  225. data/website/docs/source/v2/cli/halt.html.md +19 -0
  226. data/website/docs/source/v2/cli/index.html.md +24 -0
  227. data/website/docs/source/v2/cli/init.html.md +18 -0
  228. data/website/docs/source/v2/cli/package.html.md +43 -0
  229. data/website/docs/source/v2/cli/plugin.html.md +56 -0
  230. data/website/docs/source/v2/cli/provision.html.md +24 -0
  231. data/website/docs/source/v2/cli/reload.html.md +27 -0
  232. data/website/docs/source/v2/cli/resume.html.md +11 -0
  233. data/website/docs/source/v2/cli/ssh.html.md +24 -0
  234. data/website/docs/source/v2/cli/ssh_config.html.md +16 -0
  235. data/website/docs/source/v2/cli/status.html.md +14 -0
  236. data/website/docs/source/v2/cli/suspend.html.md +19 -0
  237. data/website/docs/source/v2/cli/up.html.md +34 -0
  238. data/website/docs/source/v2/debugging.html.md +42 -0
  239. data/website/docs/source/v2/getting-started/boxes.html.md +56 -0
  240. data/website/docs/source/v2/getting-started/index.html.md +43 -0
  241. data/website/docs/source/v2/getting-started/networking.html.md +45 -0
  242. data/website/docs/source/v2/getting-started/project_setup.html.md +38 -0
  243. data/website/docs/source/v2/getting-started/providers.html.md +37 -0
  244. data/website/docs/source/v2/getting-started/provisioning.html.md +75 -0
  245. data/website/docs/source/v2/getting-started/rebuild.html.md +17 -0
  246. data/website/docs/source/v2/getting-started/synced_folders.html.md +42 -0
  247. data/website/docs/source/v2/getting-started/teardown.html.md +41 -0
  248. data/website/docs/source/v2/getting-started/up.html.md +35 -0
  249. data/website/docs/source/v2/index.html.md +10 -0
  250. data/website/docs/source/v2/installation/backwards-compatibility.html.md +35 -0
  251. data/website/docs/source/v2/installation/index.html.md +28 -0
  252. data/website/docs/source/v2/installation/uninstallation.html.md +39 -0
  253. data/website/docs/source/v2/installation/upgrading-from-1-0.html.md +26 -0
  254. data/website/docs/source/v2/installation/upgrading.html.md +20 -0
  255. data/website/docs/source/v2/multi-machine/index.html.md +105 -0
  256. data/website/docs/source/v2/networking/basic_usage.html.md +43 -0
  257. data/website/docs/source/v2/networking/forwarded_ports.html.md +57 -0
  258. data/website/docs/source/v2/networking/index.html.md +40 -0
  259. data/website/docs/source/v2/networking/private_network.html.md +48 -0
  260. data/website/docs/source/v2/networking/public_network.html.md +53 -0
  261. data/website/docs/source/v2/plugins/commands.html.md +116 -0
  262. data/website/docs/source/v2/plugins/configuration.html.md +166 -0
  263. data/website/docs/source/v2/plugins/development-basics.html.md +139 -0
  264. data/website/docs/source/v2/plugins/guest-capabilities.html.md +100 -0
  265. data/website/docs/source/v2/plugins/guests.html.md +99 -0
  266. data/website/docs/source/v2/plugins/hosts.html.md +46 -0
  267. data/website/docs/source/v2/plugins/index.html.md +21 -0
  268. data/website/docs/source/v2/plugins/packaging.html.md +102 -0
  269. data/website/docs/source/v2/plugins/providers.html.md +234 -0
  270. data/website/docs/source/v2/plugins/provisioners.html.md +64 -0
  271. data/website/docs/source/v2/plugins/usage.html.md +58 -0
  272. data/website/docs/source/v2/providers/basic_usage.html.md +67 -0
  273. data/website/docs/source/v2/providers/configuration.html.md +89 -0
  274. data/website/docs/source/v2/providers/custom.html.md +9 -0
  275. data/website/docs/source/v2/providers/default.html.md +22 -0
  276. data/website/docs/source/v2/providers/index.html.md +23 -0
  277. data/website/docs/source/v2/providers/installation.html.md +11 -0
  278. data/website/docs/source/v2/provisioning/ansible.html.md +144 -0
  279. data/website/docs/source/v2/provisioning/basic_usage.html.md +67 -0
  280. data/website/docs/source/v2/provisioning/chef_client.html.md +109 -0
  281. data/website/docs/source/v2/provisioning/chef_solo.html.md +156 -0
  282. data/website/docs/source/v2/provisioning/index.html.md +28 -0
  283. data/website/docs/source/v2/provisioning/puppet_agent.html.md +70 -0
  284. data/website/docs/source/v2/provisioning/puppet_apply.html.md +114 -0
  285. data/website/docs/source/v2/provisioning/shell.html.md +88 -0
  286. data/website/docs/source/v2/synced-folders/basic_usage.html.md +53 -0
  287. data/website/docs/source/v2/synced-folders/index.html.md +17 -0
  288. data/website/docs/source/v2/synced-folders/nfs.html.md +53 -0
  289. data/website/docs/source/v2/vagrantfile/index.html.md +75 -0
  290. data/website/docs/source/v2/vagrantfile/machine_settings.html.md +84 -0
  291. data/website/docs/source/v2/vagrantfile/ssh_settings.html.md +61 -0
  292. data/website/docs/source/v2/vagrantfile/vagrant_settings.html.md +19 -0
  293. data/website/docs/source/v2/vagrantfile/version.html.md +64 -0
  294. data/website/docs/source/v2/virtualbox/boxes.html.md +71 -0
  295. data/website/docs/source/v2/virtualbox/configuration.html.md +63 -0
  296. data/website/docs/source/v2/virtualbox/index.html.md +21 -0
  297. data/website/docs/source/v2/virtualbox/usage.html.md +12 -0
  298. data/website/docs/source/v2/vmware/boxes.html.md +107 -0
  299. data/website/docs/source/v2/vmware/configuration.html.md +91 -0
  300. data/website/docs/source/v2/vmware/index.html.md +30 -0
  301. data/website/docs/source/v2/vmware/installation.html.md +40 -0
  302. data/website/docs/source/v2/vmware/known-issues.html.md +21 -0
  303. data/website/docs/source/v2/vmware/usage.html.md +27 -0
  304. data/website/docs/source/v2/why-vagrant/index.html.md +46 -0
  305. data/website/www/.buildpacks +2 -0
  306. data/website/www/Gemfile +15 -0
  307. data/website/www/Gemfile.lock +123 -0
  308. data/website/www/Procfile +1 -0
  309. data/website/www/README.md +26 -0
  310. data/website/www/config.rb +88 -0
  311. data/website/www/config.ru +39 -0
  312. data/website/www/helpers/sidebar_helpers.rb +12 -0
  313. data/website/www/lib/legacy_redirect.rb +32 -0
  314. data/website/www/source/404.html.erb +11 -0
  315. data/website/www/source/_sidebar_about.erb +5 -0
  316. data/website/www/source/_sidebar_blog.erb +11 -0
  317. data/website/www/source/_sidebar_support.html.erb +6 -0
  318. data/website/www/source/about.html.markdown +16 -0
  319. data/website/www/source/blog.html.erb +34 -0
  320. data/website/www/source/blog/2013-09-16-test.html.markdown +26 -0
  321. data/website/www/source/blog_feed.xml.builder +23 -0
  322. data/website/www/source/images/bullet_1.png +0 -0
  323. data/website/www/source/images/bullet_2.png +0 -0
  324. data/website/www/source/images/bullet_3.png +0 -0
  325. data/website/www/source/images/customers.png +0 -0
  326. data/website/www/source/images/customers_small.png +0 -0
  327. data/website/www/source/images/footer_background.png +0 -0
  328. data/website/www/source/images/footer_hashi_logo.png +0 -0
  329. data/website/www/source/images/footer_vagrant_logo.png +0 -0
  330. data/website/www/source/images/get_started_background.png +0 -0
  331. data/website/www/source/images/icon_caution.png +0 -0
  332. data/website/www/source/images/logo_docs.png +0 -0
  333. data/website/www/source/images/logo_docs_small.png +0 -0
  334. data/website/www/source/images/logo_small.png +0 -0
  335. data/website/www/source/images/logo_vagrant.png +0 -0
  336. data/website/www/source/images/open_close.png +0 -0
  337. data/website/www/source/images/search_icon.png +0 -0
  338. data/website/www/source/images/sidebar_background_docs.png +0 -0
  339. data/website/www/source/images/sidebar_background_inner.png +0 -0
  340. data/website/www/source/images/sponsors/fastly.png +0 -0
  341. data/website/www/source/images/sponsors/kiip.png +0 -0
  342. data/website/www/source/images/sponsors/softlayer.jpg +0 -0
  343. data/website/www/source/images/sponsors/typekit.png +0 -0
  344. data/website/www/source/images/steps_background.png +0 -0
  345. data/website/www/source/images/vagrant_header_background.png +0 -0
  346. data/website/www/source/images/vagrant_vmware_background.png +0 -0
  347. data/website/www/source/index.html.erb +109 -0
  348. data/website/www/source/javascripts/backstretch.js +4 -0
  349. data/website/www/source/javascripts/bootstrap.min.js +7 -0
  350. data/website/www/source/javascripts/fittext.js +43 -0
  351. data/website/www/source/javascripts/grid-overlay.js +161 -0
  352. data/website/www/source/javascripts/jquery.js +2 -0
  353. data/website/www/source/javascripts/less-1.3.0.min.js +9 -0
  354. data/website/www/source/javascripts/modernizr.js +1384 -0
  355. data/website/www/source/javascripts/vagrantup.js +58 -0
  356. data/website/www/source/layouts/blog_post.erb +42 -0
  357. data/website/www/source/layouts/inner.erb +34 -0
  358. data/website/www/source/layouts/layout.erb +107 -0
  359. data/website/www/source/sponsors.html.erb +23 -0
  360. data/website/www/source/stylesheets/_base.less +326 -0
  361. data/website/www/source/stylesheets/_components.less +74 -0
  362. data/website/www/source/stylesheets/_footer.less +101 -0
  363. data/website/www/source/stylesheets/_media-queries.less +549 -0
  364. data/website/www/source/stylesheets/_mixins.less +175 -0
  365. data/website/www/source/stylesheets/_modules.less +37 -0
  366. data/website/www/source/stylesheets/_nav.less +74 -0
  367. data/website/www/source/stylesheets/_pages.less +467 -0
  368. data/website/www/source/stylesheets/_sidebar.less +137 -0
  369. data/website/www/source/stylesheets/_type.less +36 -0
  370. data/website/www/source/stylesheets/_variables.less +39 -0
  371. data/website/www/source/stylesheets/bootstrap.css +5946 -0
  372. data/website/www/source/stylesheets/vagrantup.less +17 -0
  373. data/website/www/source/support.html.erb +25 -0
  374. data/website/www/source/support/community.html.erb +28 -0
  375. data/website/www/source/support/professional.html.erb +17 -0
  376. data/website/www/source/vmware/eula.html.md +21 -0
  377. data/website/www/source/vmware/index.html.erb +185 -0
  378. data/website/www/source/vmware/privacy-policy.html.md +71 -0
  379. data/website/www/source/vmware/terms-of-service.html.md +50 -0
  380. metadata +436 -186
data/.gitignore CHANGED
@@ -4,15 +4,15 @@
4
4
  # Vagrant stuff
5
5
  acceptance_config.yml
6
6
  boxes/*
7
- Vagrantfile
8
- .vagrant
7
+ /Vagrantfile
8
+ /.vagrant
9
9
 
10
10
  # Bundler/Rubygems
11
11
  *.gem
12
12
  .bundle
13
13
  pkg/*
14
14
  tags
15
- Gemfile.lock
15
+ /Gemfile.lock
16
16
  test/tmp/
17
17
  /vendor
18
18
 
@@ -30,3 +30,19 @@ doc/
30
30
  # IDE junk
31
31
  .idea/*
32
32
  *.iml
33
+
34
+ # Ruby Managers
35
+ .rbenv
36
+ .ruby-gemset
37
+ .ruby-version
38
+ .rvmrc
39
+
40
+ # Website: docs
41
+ website/docs/.sass-cache
42
+ website/docs/build
43
+ website/docs/Rakefile
44
+
45
+ # Website: www
46
+ website/www/.sass-cache
47
+ website/www/build
48
+ website/www/Rakefile
data/CHANGELOG.md CHANGED
@@ -1,3 +1,314 @@
1
+ ## 1.3.3 (September 18, 2013)
2
+
3
+ BUG FIXES:
4
+
5
+ - core: Fix issues with dynamic linker not finding symbols on OS X. [GH-2219]
6
+ - core: Properly clean up machine directories on destroy. [GH-2223]
7
+ - core: Add a timeout to waiting for SSH connection and server headers
8
+ on SSH. [GH-2226]
9
+
10
+ ## 1.3.2 (September 17, 2013)
11
+
12
+ IMPROVEMENTS:
13
+
14
+ - provisioners/ansible: Support more verbosity levels, better documentation.
15
+ [GH-2153]
16
+ - provisioners/ansible: Add `host_key_checking` configuration. [GH-2203]
17
+
18
+ BUG FIXES:
19
+
20
+ - core: Report the proper invalid state when waiting for the guest machine
21
+ to be ready
22
+ - core: `Guest#capability?` now works with strings as well
23
+ - core: Fix NoMethodError in the new `Vagrant.has_plugin?` method [GH-2189]
24
+ - core: Convert forwarded port parameters to integers. [GH-2173]
25
+ - core: Don't spike CPU to 100% while waiting for machine to boot. [GH-2163]
26
+ - core: Increase timeout for individual SSH connection to 60 seconds. [GH-2163]
27
+ - core: Call realpath after creating directory so NFS directory creation
28
+ works. [GH-2196]
29
+ - core: Don't try to be clever about deleting the machine state
30
+ directory anymore. Manually done in destroy actions. [GH-2201]
31
+ - core: Find the root Vagrantfile only if Vagrantfile is a file, not
32
+ a directory. [GH-2216]
33
+ - guests/linux: Try `id -g` in addition to `getent` for mounting
34
+ VirtualBox shared folders [GH-2197]
35
+ - hosts/arch: NFS exporting works properly, no exceptions. [GH-2161]
36
+ - hosts/bsd: Use only `sudo` for writing NFS exports. This lets NFS
37
+ exports work if you have sudo privs but not `su`. [GH-2191]
38
+ - hosts/fedora: Fix host detection encoding issues. [GH-1977]
39
+ - hosts/linux: Fix NFS export problems with `no_subtree_check`. [GH-2156]
40
+ - installer/mac: Vagrant works properly when a library conflicts from
41
+ homebrew. [GH-2188]
42
+ - installer/mac: deb/rpm packages now have an epoch of 1 so that new
43
+ installers don't appear older. [GH-2179]
44
+ - provisioners/ansible: Default output level is now verbose again. [GH-2194]
45
+ - providers/virtualbox: Fix an issue where destroy middlewares weren't
46
+ being properly called. [GH-2200]
47
+
48
+ ## 1.3.1 (September 6, 2013)
49
+
50
+ BUG FIXES:
51
+
52
+ - core: Fix various issues where using the same options hash in a
53
+ Vagrantfile can cause errors.
54
+ - core: `VAGRANT_VAGRANTFILE` env var only applies to the project
55
+ Vagrantfile name. [GH-2130]
56
+ - core: Fix an issue where the data directory would be deleted too
57
+ quickly in a multi-VM environment.
58
+ - core: Handle the case where we get an EACCES cleaning up the .vagrant
59
+ directory.
60
+ - core: Fix exception on upgrade warnings from V1 to V2. [GH-2142]
61
+ - guests/coreos: Proper IP detection. [GH-2146]
62
+ - hosts/linux: NFS exporting works properly again. [GH-2137]
63
+ - provisioners/chef: Work even with restrictive umask on user. [GH-2121]
64
+ - provisioners/chef: Fix environment validation to be less restrictive.
65
+ - provisioners/puppet: No more "shared folders cannot be found" error.
66
+ [GH-2134]
67
+ - provisioners/puppet: Work with restrictive umask on user by testing
68
+ for folders with sudo. [GH-2121]
69
+
70
+ ## 1.3.0 (September 5, 2013)
71
+
72
+ BACKWARDS INCOMPATIBILITY:
73
+
74
+ - `config.ssh.max_tries` is gone. Instead of maximum tries, Vagrant now
75
+ uses a simple overall timeout value `config.vm.boot_timeout` to wait for
76
+ the machine to boot up.
77
+ - `config.vm.graceful_halt_retry_*` settings are gone. Instead, a single
78
+ timeout is now used to wait for a graceful halt to work, specified
79
+ by `config.vm.graceful_halt_timeout`.
80
+ - The ':extra' flag to shared folders for specifying arbitrary mount
81
+ options has been replaced with the `:mount_options` flag, which is now
82
+ an array of mount options.
83
+ - `vagrant up` will now only run provisioning by default the first time
84
+ it is run. Subsequent `reload` or `up` will need to explicitly specify
85
+ the `--provision` flag to provision. [GH-1776]
86
+
87
+ FEATURES:
88
+
89
+ - New command: `vagrant plugin update` to update specific installed plugins.
90
+ - New provisioner: File provisioner. [GH-2112]
91
+ - New provisioner: Salt provisioner. [GH-1626]
92
+ - New guest: Mac OS X guest support. [GH-1914]
93
+ - New guest: CoreOS guest support. Change host names and configure networks on
94
+ CoreOS. [GH-2022]
95
+ - New guest: Solaris 11 guest support. [GH-2052]
96
+ - Support for environments in the Chef-solo provisioner. [GH-1915]
97
+ - Provisioners can now define "cleanup" tasks that are executed on
98
+ `vagrant destroy`. [GH-1302]
99
+ - Chef Client provisioner will now clean up the node/client using
100
+ `knife` if configured to do so.
101
+ - `vagrant up` has a `--no-destroy-on-error` flag that will not destroy
102
+ the VM if a fatal error occurs. [GH-2011]
103
+ - NFS: Arbitrary mount options can be specified using the
104
+ `mount_options` option on synced folders. [GH-1029]
105
+ - NFS: Arbitrary export options can be specified using
106
+ `bsd__nfs_options` and `linux__nfs_options`. [GH-1029]
107
+ - Static IP can now be set on public networks. [GH-1745]
108
+ - Add `Vagrant.has_plugin?` method for use in Vagrantfile to check
109
+ if a plugin is installed. [GH-1736]
110
+ - Support for remote shell provisioning scripts [GH-1787]
111
+
112
+ IMPROVEMENTS:
113
+
114
+ - core: add `--color` to any Vagrant command to FORCE color output. [GH-2027]
115
+ - core: "config.vm.host_name" works again, just an alias to hostname.
116
+ - core: Reboots via SSH are now handled gracefully (without exception).
117
+ - core: Mark `disabled` as true on forwarded port to disable. [GH-1922]
118
+ - core: NFS exports are now namespaced by user ID, so pruning NFS won't
119
+ remove exports from other users. [GH-1511]
120
+ - core: "vagrant -v" no longer loads the Vagrantfile
121
+ - commands/box/remove: Fix stack trace that happens if no provider
122
+ is specified. [GH-2100]
123
+ - commands/plugin/install: Post install message of a plugin will be
124
+ shown if available. [GH-1986]
125
+ - commands/status: cosmetic improvement to better align names and
126
+ statuses [GH-2016]
127
+ - communicators/ssh: Support a proxy_command. [GH-1537]
128
+ - guests/openbsd: support configuring networks, changing host name,
129
+ and mounting NFS. [GH-2086]
130
+ - guests/suse: Supports private/public networks. [GH-1689]
131
+ - hosts/fedora: Support RHEL as a host. [GH-2088]
132
+ - providers/virtualbox: "post-boot" customizations will run directly
133
+ after boot, and before waiting for SSH. [GH-2048]
134
+ - provisioners/ansible: Many more configuration options. [GH-1697]
135
+ - provisioners/ansible: Ansible `inventory_path` can be a directory now. [GH-2035]
136
+ - provisioners/ansible: Extra verbose option by setting `config.verbose`
137
+ to `extra`. [GH-1979]
138
+ - provisioners/ansible: `inventory_path` will be auto-generated if not
139
+ specified. [GH-1907]
140
+ - provisioners/puppet: Add `nfs` option to puppet provisioner. [GH-1308]
141
+ - provisioners/shell: Set the `privileged` option to false to run
142
+ without sudo. [GH-1370]
143
+
144
+ BUG FIXES:
145
+
146
+ - core: Clean up ".vagrant" folder more effectively.
147
+ - core: strip newlines off of ID file values [GH-2024]
148
+ - core: Multiple forwarded ports with different protocols but the same
149
+ host port can be specified. [GH-2059]
150
+ - core: `:nic_type` option for private networks is respected. [GH-1704]
151
+ - commands/up: provision-with validates the provisioners given. [GH-1957]
152
+ - guests/arch: use systemd way of setting host names. [GH-2041]
153
+ - guests/debian: Force bring up eth0. Fixes hangs on setting hostname.
154
+ [GH-2026]
155
+ - guests/ubuntu: upstart events are properly emitted again. [GH-1717]
156
+ - hosts/bsd: Nicer error if can't read NFS exports. [GH-2038]
157
+ - hosts/fedora: properly detect later CentOS versions. [GH-2008]
158
+ - providers/virtualbox: VirtualBox 4.2 now supports up to 36
159
+ network adapters. [GH-1886]
160
+ - provisioners/ansible: Execute ansible with a cwd equal to the
161
+ path where the Vagrantfile is. [GH-2051]
162
+ - provisioners/all: invalid config keys will be properly reported. [GH-2117]
163
+ - provisioners/ansible: No longer report failure on every run. [GH-2007]
164
+ - provisioners/ansible: Properly handle extra vars with spaces. [GH-1984]
165
+ - provisioners/chef: Formatter option works properly. [GH-2058]
166
+ - provisioners/chef: Create/chown the provisioning folder before
167
+ reading contents. [GH-2121]
168
+ - provisioners/puppet: mount synced folders as root to avoid weirdness
169
+ - provisioners/puppet: Run from the correct working directory. [GH-1967]
170
+ with Puppet. [GH-2015]
171
+ - providers/virtualbox: Use `getent` to get the group ID instead of
172
+ `id` in case the name doesn't have a user. [GH-1801]
173
+ - providers/virtualbox: Will only set the default name of the VM on
174
+ initial `up`. [GH-1817]
175
+
176
+ ## 1.2.7 (July 28, 2013)
177
+
178
+ BUG FIXES:
179
+
180
+ - On Windows, properly convert synced folder host path to a string
181
+ so that separator replacement works properly.
182
+ - Use `--color=false` for no color in Puppet to support older
183
+ versions properly. [GH-2000]
184
+ - Make sure the hostname configuration is a string. [GH-1999]
185
+ - cURL downloads now contain a user agent which fixes some
186
+ issues with downloading Vagrant through proxies. [GH-2003]
187
+ - `vagrant plugin install` will now always properly show the actual
188
+ installed gem name. [GH-1834]
189
+
190
+ ## 1.2.6 (July 26, 2013)
191
+
192
+ BUG FIXES:
193
+
194
+ - Box collections with multiple formats work properly by converting
195
+ the supported formats to symbols. [GH-1990]
196
+
197
+ ## 1.2.5 (July 26, 2013)
198
+
199
+ FEATURES:
200
+
201
+ - `vagrant help <command>` now works. [GH-1578]
202
+ - Added `config.vm.box_download_insecure` to allow the box_url setting
203
+ to point to an https site that won't be validated. [GH-1712]
204
+ - VirtualBox VBoxManage customizations can now be specified to run
205
+ pre-boot (the default and existing functionality, pre-import,
206
+ or post-boot. [GH-1247]
207
+ - VirtualBox no longer destroys unused network interfaces by default.
208
+ This didn't work across multi-user systems and required admin privileges
209
+ on Windows, so it has been disabled by default. It can be enabled using
210
+ the VirtualBox provider-specific `destroy_unused_network_interfaces`
211
+ configuration by setting it to true. [GH-1324]
212
+
213
+ IMPROVEMENTS:
214
+
215
+ - Remote commands that fail will now show the stdout/stderr of the
216
+ command that failed. [GH-1203]
217
+ - Puppet will run without color if the UI is not colored. [GH-1344]
218
+ - Chef supports the "formatter" configuration for setting the
219
+ formatter. [GH-1250]
220
+ - VAGRANT_DOTFILE_PATH environmental variable reintroduces the
221
+ functionality removed in 1.1 from "config.dotfile_name" [GH-1524]
222
+ - Vagrant will show an error if VirtualBox 4.2.14 is running.
223
+ - Added provider to BoxNotFound error message. [GH-1692]
224
+ - If Ansible fails to run properly, show an error message. [GH-1699]
225
+ - Adding a box with the `--provider` flag will now allow a box for
226
+ any of that provider's supported formats.
227
+ - NFS mounts enable UDP by default, resulting in higher performance.
228
+ (Because mount is over local network, packet loss is not an issue)
229
+ [GH-1706]
230
+
231
+ BUG FIXES:
232
+
233
+ - `box_url` now handles the case where the provider doesn't perfectly
234
+ match the provider in use, but the provider supports it. [GH-1752]
235
+ - Fix uninitialized constant error when configuring Arch Linux network. [GH-1734]
236
+ - Debian/Ubuntu change hostname works properly if eth0 is configured
237
+ with hot-plugging. [GH-1929]
238
+ - NFS exports with improper casing on Mac OS X work properly. [GH-1202]
239
+ - Shared folders overriding '/vagrant' in multi-VM environments no
240
+ longer all just use the last value. [GH-1935]
241
+ - NFS export fsid's are now 32-bit integers, rather than UUIDs. This
242
+ lets NFS exports work with Linux kernels older than 2.6.20. [GH-1127]
243
+ - NFS export allows access from all private networks on the VM. [GH-1204]
244
+ - Default VirtualBox VM name now contains the machine name as defined
245
+ in the Vagrantfile, helping differentiate multi-VM. [GH-1281]
246
+ - NFS works properly on CentOS hosts. [GH-1394]
247
+ - Solaris guests actually shut down properly. [GH-1506]
248
+ - All provisioners only output newlines when the provisioner sends a
249
+ newline. This results in the output looking a lot nicer.
250
+ - Sharing folders works properly if ".profile" contains an echo. [GH-1677]
251
+ - `vagrant ssh-config` IdentityFile is only wrapped in quotes if it
252
+ contains a space. [GH-1682]
253
+ - Shared folder target path can be a Windows path. [GH-1688]
254
+ - Forwarded ports don't auto-correct by default, and will raise an
255
+ error properly if they collide. [GH-1701]
256
+ - Retry SSH on ENETUNREACH error. [GH-1732]
257
+ - NFS is silently ignored on Windows. [GH-1748]
258
+ - Validation so that private network static IP does not end in ".1" [GH-1750]
259
+ - With forward agent enabled and sudo being used, Vagrant will automatically
260
+ discover and set `SSH_AUTH_SOCK` remotely so that forward agent
261
+ works properly despite misconfigured sudoers. [GH-1307]
262
+ - Synced folder paths on Windows containing '\' are replaced with
263
+ '/' internally so that they work properly.
264
+ - Unused config objects are finalized properly. [GH-1877]
265
+ - Private networks work with Fedora guests once again. [GH-1738]
266
+ - Default internal encoding of strings in Vagrant is now UTF-8, allowing
267
+ detection of Fedora to work again (which contained a UTF-8 string). [GH-1977]
268
+
269
+ ## 1.2.4 (July 16, 2013)
270
+
271
+ FEATURES:
272
+
273
+ - Chef solo and client provisioning now support a `custom_config_path`
274
+ setting that accepts a path to a Ruby file to load as part of Chef
275
+ configuration, allowing you to override any setting available. [GH-876]
276
+ - CFEngine provisioner: you can now specify the package name to install,
277
+ so CFEngine enterprise is supported. [GH-1920]
278
+
279
+ IMPROVEMENTS:
280
+
281
+ - `vagrant box remove` works with only the name of the box if that
282
+ box exists only backed by one provider. [GH-1032]
283
+ - `vagrant destroy` returns exit status 1 if any of the confirmations
284
+ are declined. [GH-923]
285
+ - Forwarded ports can specify a host IP and guest IP to bind to. [GH-1121]
286
+ - You can now set the "ip" of a private network that uses DHCP. This will
287
+ change the subnet and such that the DHCP server uses.
288
+ - Add `file_cache_path` support for chef_solo. [GH-1897]
289
+
290
+ BUG FIXES:
291
+
292
+ - VBoxManage or any other executable missing from PATH properly
293
+ reported. Regression from 1.2.2. [GH-1928]
294
+ - Boxes downloaded as part of `vagrant up` are now done so _prior_ to
295
+ config validation. This allows Vagrantfiles to references files that
296
+ may be in the box itself. [GH-1061]
297
+ - Chef removes dna.json and encrypted data bag secret file prior to
298
+ uploading. [GH-1111]
299
+ - NFS synced folders exporting sub-directories of other exported folders now
300
+ works properly. [GH-785]
301
+ - NFS shared folders properly dereference symlinks so that the real path
302
+ is used, avoiding mount errors [GH-1101]
303
+ - SSH channel is closed after the exit status is received, potentially
304
+ eliminating any SSH hangs. [GH-603]
305
+ - Fix regression where VirtualBox detection wasn't working anymore. [GH-1918]
306
+ - NFS shared folders with single quotes in their name now work properly. [GH-1166]
307
+ - Debian/Ubuntu request DHCP renewal when hostname changes, which will
308
+ fix issues with FQDN detecting. [GH-1929]
309
+ - SSH adds the "DSAAuthentication=yes" option in case that is disabled
310
+ on the user's system. [GH-1900]
311
+
1
312
  ## 1.2.3 (July 9, 2013)
2
313
 
3
314
  FEATURES:
data/bin/vagrant CHANGED
@@ -40,6 +40,12 @@ elsif !$stdout.tty? && !Vagrant::Util::Platform.cygwin?
40
40
  opts[:ui_class] = Vagrant::UI::Basic
41
41
  end
42
42
 
43
+ # Also allow users to force colors.
44
+ if ARGV.include?("--color")
45
+ ARGV.delete("--color")
46
+ opts[:ui_class] = Vagrant::UI::Colored
47
+ end
48
+
43
49
  # Default to colored output
44
50
  opts[:ui_class] ||= Vagrant::UI::Colored
45
51
 
@@ -54,6 +60,12 @@ ARGV.each do |arg|
54
60
  end
55
61
  end
56
62
 
63
+ # Fast path the version of Vagrant
64
+ if ARGV.include?("-v") || ARGV.include?("--version")
65
+ puts "Vagrant #{Vagrant::VERSION}"
66
+ exit 0
67
+ end
68
+
57
69
  env = nil
58
70
  begin
59
71
  # Create the environment, which is the cwd of wherever the
data/config/default.rb CHANGED
@@ -5,8 +5,6 @@ Vagrant.configure("2") do |config|
5
5
  config.ssh.forward_x11 = false
6
6
  config.ssh.guest_port = 22
7
7
  config.ssh.keep_alive = true
8
- config.ssh.max_tries = 100
9
- config.ssh.timeout = 30
10
8
  config.ssh.shell = "bash -l"
11
9
 
12
10
  config.ssh.default.username = "vagrant"
@@ -14,8 +12,8 @@ Vagrant.configure("2") do |config|
14
12
  config.vm.usable_port_range = (2200..2250)
15
13
  config.vm.box_url = nil
16
14
  config.vm.base_mac = nil
17
- config.vm.graceful_halt_retry_count = 60
18
- config.vm.graceful_halt_retry_interval = 1
15
+ config.vm.boot_timeout = 300
16
+ config.vm.graceful_halt_timeout = 60
19
17
 
20
18
  # Share SSH locally by default
21
19
  config.vm.network :forwarded_port,
data/keys/README.md CHANGED
@@ -8,10 +8,3 @@ If you're working with a team or company or with a custom box and
8
8
  you want more secure SSH, you should create your own keypair
9
9
  and configure the private key in the Vagrantfile with
10
10
  `config.ssh.private_key_path`
11
-
12
- # Putty
13
-
14
- If you are using Vagrant on windows, the .ppk file contained here, in the keys directory,
15
- has been generated from the private key and should be used to connect Putty to any VMs that
16
- are leveraging the default key pair. See [guide](http://docs.vagrantup.com/v1/docs/getting-started/ssh.html)
17
- in the documentation for more details on using Putty with Vagrant.
data/lib/vagrant.rb CHANGED
@@ -129,6 +129,13 @@ module Vagrant
129
129
  Config.run(version, &block)
130
130
  end
131
131
 
132
+ # This checks if a plugin with the given name is installed. This can
133
+ # be used from the Vagrantfile to easily branch based on plugin
134
+ # availability.
135
+ def self.has_plugin?(name)
136
+ plugin("2").manager.registered.any? { |plugin| plugin.name == name }
137
+ end
138
+
132
139
  # Returns a superclass to use when creating a plugin for Vagrant.
133
140
  # Given a specific version, this returns a proper superclass to use
134
141
  # to register plugins for that version.
@@ -20,9 +20,11 @@ module Vagrant
20
20
  autoload :Lock, "vagrant/action/builtin/lock"
21
21
  autoload :NFS, "vagrant/action/builtin/nfs"
22
22
  autoload :Provision, "vagrant/action/builtin/provision"
23
+ autoload :ProvisionerCleanup, "vagrant/action/builtin/provisioner_cleanup"
23
24
  autoload :SetHostname, "vagrant/action/builtin/set_hostname"
24
25
  autoload :SSHExec, "vagrant/action/builtin/ssh_exec"
25
26
  autoload :SSHRun, "vagrant/action/builtin/ssh_run"
27
+ autoload :WaitForCommunicator, "vagrant/action/builtin/wait_for_communicator"
26
28
  end
27
29
 
28
30
  module General
@@ -44,12 +44,23 @@ module Vagrant
44
44
  return
45
45
  end
46
46
 
47
+ box_formats = env[:box_provider]
48
+ if box_formats
49
+ # Determine the formats a box can support and allow the box to
50
+ # be any of those formats.
51
+ provider_plugin = Vagrant.plugin("2").manager.providers[env[:box_provider]]
52
+ if provider_plugin
53
+ box_formats = provider_plugin[1][:box_format]
54
+ box_formats ||= env[:box_provider]
55
+ end
56
+ end
57
+
47
58
  # Add the box
48
59
  env[:ui].info I18n.t("vagrant.actions.box.add.adding", :name => env[:box_name])
49
60
  added_box = nil
50
61
  begin
51
62
  added_box = env[:box_collection].add(
52
- @temp_path, env[:box_name], env[:box_provider], env[:box_force])
63
+ @temp_path, env[:box_name], box_formats, env[:box_force])
53
64
  rescue Vagrant::Errors::BoxUpgradeRequired
54
65
  # Upgrade the box
55
66
  env[:box_collection].upgrade(env[:box_name])