tnargav 1.2.3 → 1.3.3

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