vagrant-fixed-ssh 1.0.7

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 (413) hide show
  1. data/.gitignore +46 -0
  2. data/.yardopts +1 -0
  3. data/CHANGELOG.md +723 -0
  4. data/Gemfile +3 -0
  5. data/LICENSE +22 -0
  6. data/README.md +121 -0
  7. data/Rakefile +18 -0
  8. data/bin/vagrant +60 -0
  9. data/config/default.rb +30 -0
  10. data/contrib/README.md +12 -0
  11. data/contrib/emacs/vagrant.el +8 -0
  12. data/contrib/vim/vagrantfile.vim +9 -0
  13. data/keys/README.md +17 -0
  14. data/keys/vagrant +27 -0
  15. data/keys/vagrant.pub +1 -0
  16. data/lib/vagrant.rb +197 -0
  17. data/lib/vagrant/action.rb +63 -0
  18. data/lib/vagrant/action/box/destroy.rb +25 -0
  19. data/lib/vagrant/action/box/download.rb +84 -0
  20. data/lib/vagrant/action/box/package.rb +19 -0
  21. data/lib/vagrant/action/box/unpackage.rb +61 -0
  22. data/lib/vagrant/action/box/verify.rb +23 -0
  23. data/lib/vagrant/action/builder.rb +128 -0
  24. data/lib/vagrant/action/builtin.rb +171 -0
  25. data/lib/vagrant/action/env/set.rb +21 -0
  26. data/lib/vagrant/action/environment.rb +12 -0
  27. data/lib/vagrant/action/general/check_virtualbox.rb +28 -0
  28. data/lib/vagrant/action/general/package.rb +101 -0
  29. data/lib/vagrant/action/general/validate.rb +18 -0
  30. data/lib/vagrant/action/runner.rb +53 -0
  31. data/lib/vagrant/action/vm/boot.rb +53 -0
  32. data/lib/vagrant/action/vm/check_accessible.rb +23 -0
  33. data/lib/vagrant/action/vm/check_box.rb +33 -0
  34. data/lib/vagrant/action/vm/check_guest_additions.rb +38 -0
  35. data/lib/vagrant/action/vm/check_port_collisions.rb +89 -0
  36. data/lib/vagrant/action/vm/clean_machine_folder.rb +43 -0
  37. data/lib/vagrant/action/vm/clear_forwarded_ports.rb +18 -0
  38. data/lib/vagrant/action/vm/clear_network_interfaces.rb +31 -0
  39. data/lib/vagrant/action/vm/clear_shared_folders.rb +18 -0
  40. data/lib/vagrant/action/vm/customize.rb +36 -0
  41. data/lib/vagrant/action/vm/default_name.rb +22 -0
  42. data/lib/vagrant/action/vm/destroy.rb +19 -0
  43. data/lib/vagrant/action/vm/destroy_unused_network_interfaces.rb +20 -0
  44. data/lib/vagrant/action/vm/discard_state.rb +22 -0
  45. data/lib/vagrant/action/vm/export.rb +57 -0
  46. data/lib/vagrant/action/vm/forward_ports.rb +92 -0
  47. data/lib/vagrant/action/vm/halt.rb +32 -0
  48. data/lib/vagrant/action/vm/host_name.rb +21 -0
  49. data/lib/vagrant/action/vm/import.rb +48 -0
  50. data/lib/vagrant/action/vm/match_mac_address.rb +21 -0
  51. data/lib/vagrant/action/vm/network.rb +403 -0
  52. data/lib/vagrant/action/vm/nfs.rb +196 -0
  53. data/lib/vagrant/action/vm/package.rb +23 -0
  54. data/lib/vagrant/action/vm/package_vagrantfile.rb +36 -0
  55. data/lib/vagrant/action/vm/provision.rb +61 -0
  56. data/lib/vagrant/action/vm/provisioner_cleanup.rb +26 -0
  57. data/lib/vagrant/action/vm/prune_nfs_exports.rb +20 -0
  58. data/lib/vagrant/action/vm/resume.rb +20 -0
  59. data/lib/vagrant/action/vm/sane_defaults.rb +78 -0
  60. data/lib/vagrant/action/vm/setup_package_files.rb +54 -0
  61. data/lib/vagrant/action/vm/share_folders.rb +114 -0
  62. data/lib/vagrant/action/vm/suspend.rb +20 -0
  63. data/lib/vagrant/action/warden.rb +92 -0
  64. data/lib/vagrant/box.rb +44 -0
  65. data/lib/vagrant/box_collection.rb +58 -0
  66. data/lib/vagrant/cli.rb +76 -0
  67. data/lib/vagrant/command.rb +24 -0
  68. data/lib/vagrant/command/base.rb +167 -0
  69. data/lib/vagrant/command/box.rb +58 -0
  70. data/lib/vagrant/command/box_add.rb +37 -0
  71. data/lib/vagrant/command/box_list.rb +28 -0
  72. data/lib/vagrant/command/box_remove.rb +27 -0
  73. data/lib/vagrant/command/box_repackage.rb +27 -0
  74. data/lib/vagrant/command/destroy.rb +64 -0
  75. data/lib/vagrant/command/gem.rb +39 -0
  76. data/lib/vagrant/command/halt.rb +39 -0
  77. data/lib/vagrant/command/init.rb +40 -0
  78. data/lib/vagrant/command/package.rb +75 -0
  79. data/lib/vagrant/command/provision.rb +40 -0
  80. data/lib/vagrant/command/reload.rb +39 -0
  81. data/lib/vagrant/command/resume.rb +33 -0
  82. data/lib/vagrant/command/ssh.rb +90 -0
  83. data/lib/vagrant/command/ssh_config.rb +51 -0
  84. data/lib/vagrant/command/start_mixins.rb +26 -0
  85. data/lib/vagrant/command/status.rb +36 -0
  86. data/lib/vagrant/command/suspend.rb +33 -0
  87. data/lib/vagrant/command/up.rb +40 -0
  88. data/lib/vagrant/communication.rb +7 -0
  89. data/lib/vagrant/communication/base.rb +56 -0
  90. data/lib/vagrant/communication/ssh.rb +230 -0
  91. data/lib/vagrant/config.rb +49 -0
  92. data/lib/vagrant/config/base.rb +82 -0
  93. data/lib/vagrant/config/container.rb +37 -0
  94. data/lib/vagrant/config/error_recorder.rb +19 -0
  95. data/lib/vagrant/config/loader.rb +127 -0
  96. data/lib/vagrant/config/nfs.rb +8 -0
  97. data/lib/vagrant/config/package.rb +7 -0
  98. data/lib/vagrant/config/ssh.rb +27 -0
  99. data/lib/vagrant/config/top.rb +72 -0
  100. data/lib/vagrant/config/vagrant.rb +14 -0
  101. data/lib/vagrant/config/vm.rb +168 -0
  102. data/lib/vagrant/config/vm/provisioner.rb +52 -0
  103. data/lib/vagrant/config/vm/sub_vm.rb +17 -0
  104. data/lib/vagrant/data_store.rb +92 -0
  105. data/lib/vagrant/downloaders.rb +7 -0
  106. data/lib/vagrant/downloaders/base.rb +25 -0
  107. data/lib/vagrant/downloaders/file.rb +22 -0
  108. data/lib/vagrant/downloaders/http.rb +97 -0
  109. data/lib/vagrant/driver.rb +8 -0
  110. data/lib/vagrant/driver/virtualbox.rb +134 -0
  111. data/lib/vagrant/driver/virtualbox_4_0.rb +459 -0
  112. data/lib/vagrant/driver/virtualbox_4_1.rb +459 -0
  113. data/lib/vagrant/driver/virtualbox_4_2.rb +606 -0
  114. data/lib/vagrant/driver/virtualbox_base.rb +326 -0
  115. data/lib/vagrant/environment.rb +522 -0
  116. data/lib/vagrant/errors.rb +445 -0
  117. data/lib/vagrant/guest.rb +18 -0
  118. data/lib/vagrant/guest/arch.rb +56 -0
  119. data/lib/vagrant/guest/base.rb +99 -0
  120. data/lib/vagrant/guest/debian.rb +64 -0
  121. data/lib/vagrant/guest/fedora.rb +66 -0
  122. data/lib/vagrant/guest/freebsd.rb +86 -0
  123. data/lib/vagrant/guest/gentoo.rb +46 -0
  124. data/lib/vagrant/guest/linux.rb +118 -0
  125. data/lib/vagrant/guest/linux/config.rb +19 -0
  126. data/lib/vagrant/guest/linux/error.rb +9 -0
  127. data/lib/vagrant/guest/openbsd.rb +20 -0
  128. data/lib/vagrant/guest/redhat.rb +67 -0
  129. data/lib/vagrant/guest/solaris.rb +118 -0
  130. data/lib/vagrant/guest/suse.rb +17 -0
  131. data/lib/vagrant/guest/ubuntu.rb +23 -0
  132. data/lib/vagrant/hosts.rb +37 -0
  133. data/lib/vagrant/hosts/arch.rb +55 -0
  134. data/lib/vagrant/hosts/base.rb +66 -0
  135. data/lib/vagrant/hosts/bsd.rb +97 -0
  136. data/lib/vagrant/hosts/fedora.rb +47 -0
  137. data/lib/vagrant/hosts/freebsd.rb +41 -0
  138. data/lib/vagrant/hosts/gentoo.rb +20 -0
  139. data/lib/vagrant/hosts/linux.rb +94 -0
  140. data/lib/vagrant/hosts/opensuse.rb +30 -0
  141. data/lib/vagrant/hosts/windows.rb +16 -0
  142. data/lib/vagrant/plugin.rb +81 -0
  143. data/lib/vagrant/provisioners.rb +12 -0
  144. data/lib/vagrant/provisioners/base.rb +44 -0
  145. data/lib/vagrant/provisioners/chef.rb +168 -0
  146. data/lib/vagrant/provisioners/chef_client.rb +132 -0
  147. data/lib/vagrant/provisioners/chef_solo.rb +234 -0
  148. data/lib/vagrant/provisioners/puppet.rb +176 -0
  149. data/lib/vagrant/provisioners/puppet_server.rb +78 -0
  150. data/lib/vagrant/provisioners/shell.rb +103 -0
  151. data/lib/vagrant/registry.rb +52 -0
  152. data/lib/vagrant/ssh.rb +126 -0
  153. data/lib/vagrant/test_helpers.rb +154 -0
  154. data/lib/vagrant/ui.rb +168 -0
  155. data/lib/vagrant/util.rb +12 -0
  156. data/lib/vagrant/util/ansi_escape_code_remover.rb +34 -0
  157. data/lib/vagrant/util/busy.rb +59 -0
  158. data/lib/vagrant/util/counter.rb +24 -0
  159. data/lib/vagrant/util/file_checksum.rb +38 -0
  160. data/lib/vagrant/util/file_mode.rb +12 -0
  161. data/lib/vagrant/util/hash_with_indifferent_access.rb +63 -0
  162. data/lib/vagrant/util/is_port_open.rb +38 -0
  163. data/lib/vagrant/util/line_ending_helpers.rb +14 -0
  164. data/lib/vagrant/util/network_ip.rb +28 -0
  165. data/lib/vagrant/util/platform.rb +68 -0
  166. data/lib/vagrant/util/retryable.rb +25 -0
  167. data/lib/vagrant/util/safe_exec.rb +36 -0
  168. data/lib/vagrant/util/safe_puts.rb +31 -0
  169. data/lib/vagrant/util/stacked_proc_runner.rb +35 -0
  170. data/lib/vagrant/util/subprocess.rb +247 -0
  171. data/lib/vagrant/util/template_renderer.rb +83 -0
  172. data/lib/vagrant/version.rb +6 -0
  173. data/lib/vagrant/vm.rb +195 -0
  174. data/tasks/acceptance.rake +113 -0
  175. data/tasks/bundler.rake +3 -0
  176. data/tasks/test.rake +20 -0
  177. data/templates/commands/init/Vagrantfile.erb +99 -0
  178. data/templates/commands/ssh_config/config.erb +15 -0
  179. data/templates/config/validation_failed.erb +7 -0
  180. data/templates/guests/arch/network_dhcp.erb +7 -0
  181. data/templates/guests/arch/network_static.erb +7 -0
  182. data/templates/guests/debian/network_dhcp.erb +6 -0
  183. data/templates/guests/debian/network_static.erb +7 -0
  184. data/templates/guests/fedora/network_dhcp.erb +6 -0
  185. data/templates/guests/fedora/network_static.erb +13 -0
  186. data/templates/guests/freebsd/network_dhcp.erb +3 -0
  187. data/templates/guests/freebsd/network_static.erb +3 -0
  188. data/templates/guests/gentoo/network_dhcp.erb +4 -0
  189. data/templates/guests/gentoo/network_static.erb +4 -0
  190. data/templates/guests/redhat/network_dhcp.erb +6 -0
  191. data/templates/guests/redhat/network_static.erb +7 -0
  192. data/templates/locales/en.yml +759 -0
  193. data/templates/nfs/exports.erb +5 -0
  194. data/templates/nfs/exports_freebsd.erb +5 -0
  195. data/templates/nfs/exports_linux.erb +5 -0
  196. data/templates/package_Vagrantfile.erb +11 -0
  197. data/templates/provisioners/chef_client/client.erb +32 -0
  198. data/templates/provisioners/chef_solo/solo.erb +25 -0
  199. data/test/acceptance/base.rb +48 -0
  200. data/test/acceptance/box_test.rb +99 -0
  201. data/test/acceptance/destroy_test.rb +37 -0
  202. data/test/acceptance/halt_test.rb +72 -0
  203. data/test/acceptance/init_test.rb +33 -0
  204. data/test/acceptance/networking/host_only_test.rb +37 -0
  205. data/test/acceptance/networking/port_forward_test.rb +125 -0
  206. data/test/acceptance/package_test.rb +46 -0
  207. data/test/acceptance/provisioning/basic_test.rb +61 -0
  208. data/test/acceptance/provisioning/chef_solo_test.rb +37 -0
  209. data/test/acceptance/provisioning/shell_test.rb +53 -0
  210. data/test/acceptance/resume_test.rb +17 -0
  211. data/test/acceptance/shared_folders_test.rb +84 -0
  212. data/test/acceptance/skeletons/chef_solo_basic/README.md +3 -0
  213. data/test/acceptance/skeletons/chef_solo_basic/cookbooks/basic/recipes/default.rb +5 -0
  214. data/test/acceptance/skeletons/chef_solo_json/README.md +3 -0
  215. data/test/acceptance/skeletons/chef_solo_json/cookbooks/basic/recipes/default.rb +6 -0
  216. data/test/acceptance/skeletons/provisioner_multi/README.md +3 -0
  217. data/test/acceptance/skeletons/provisioner_multi/cookbooks/basic/recipes/default.rb +5 -0
  218. data/test/acceptance/ssh_test.rb +46 -0
  219. data/test/acceptance/support/config.rb +42 -0
  220. data/test/acceptance/support/isolated_environment.rb +117 -0
  221. data/test/acceptance/support/matchers/have_color.rb +9 -0
  222. data/test/acceptance/support/matchers/match_output.rb +14 -0
  223. data/test/acceptance/support/matchers/succeed.rb +14 -0
  224. data/test/acceptance/support/network_tests.rb +29 -0
  225. data/test/acceptance/support/output.rb +95 -0
  226. data/test/acceptance/support/shared/base_context.rb +72 -0
  227. data/test/acceptance/support/shared/command_examples.rb +33 -0
  228. data/test/acceptance/support/virtualbox.rb +36 -0
  229. data/test/acceptance/suspend_test.rb +56 -0
  230. data/test/acceptance/up_basic_test.rb +33 -0
  231. data/test/acceptance/up_with_box_url.rb +40 -0
  232. data/test/acceptance/vagrant_test.rb +47 -0
  233. data/test/acceptance/version_test.rb +15 -0
  234. data/test/buildbot/README.md +72 -0
  235. data/test/buildbot/buildbot_config/__init__.py +0 -0
  236. data/test/buildbot/buildbot_config/config/__init__.py +0 -0
  237. data/test/buildbot/buildbot_config/config/loader.py +24 -0
  238. data/test/buildbot/buildbot_config/config/master.py +24 -0
  239. data/test/buildbot/buildbot_config/config/slave.py +22 -0
  240. data/test/buildbot/buildbot_config/master/__init__.py +6 -0
  241. data/test/buildbot/buildbot_config/master/builders.py +78 -0
  242. data/test/buildbot/buildbot_config/master/buildsteps.py +100 -0
  243. data/test/buildbot/buildbot_config/master/change_sources.py +8 -0
  244. data/test/buildbot/buildbot_config/master/schedulers.py +32 -0
  245. data/test/buildbot/buildbot_config/master/slaves.py +60 -0
  246. data/test/buildbot/buildbot_config/master/status.py +52 -0
  247. data/test/buildbot/master/Makefile.sample +28 -0
  248. data/test/buildbot/master/buildbot.tac +36 -0
  249. data/test/buildbot/master/master.cfg +67 -0
  250. data/test/buildbot/master/public_html/bg_gradient.jpg +0 -0
  251. data/test/buildbot/master/public_html/default.css +545 -0
  252. data/test/buildbot/master/public_html/favicon.ico +0 -0
  253. data/test/buildbot/master/public_html/robots.txt +10 -0
  254. data/test/buildbot/master/public_html/static/css/bootstrap-1.4.0.min.css +356 -0
  255. data/test/buildbot/master/public_html/static/css/prettify.css +97 -0
  256. data/test/buildbot/master/public_html/static/css/syntax.css +60 -0
  257. data/test/buildbot/master/public_html/static/css/vagrant.base.css +205 -0
  258. data/test/buildbot/master/public_html/static/images/base_box_mac.jpg +0 -0
  259. data/test/buildbot/master/public_html/static/images/getting-started/success.jpg +0 -0
  260. data/test/buildbot/master/public_html/static/images/icons/error.png +0 -0
  261. data/test/buildbot/master/public_html/static/images/vagrant_chilling.png +0 -0
  262. data/test/buildbot/master/public_html/static/images/vagrant_holding.png +0 -0
  263. data/test/buildbot/master/public_html/static/images/vagrant_looking.png +0 -0
  264. data/test/buildbot/master/public_html/static/images/windows/alter_path.jpg +0 -0
  265. data/test/buildbot/master/public_html/static/images/windows/edit_path.jpg +0 -0
  266. data/test/buildbot/master/public_html/static/images/windows/environment_variables_button.jpg +0 -0
  267. data/test/buildbot/master/public_html/static/images/windows/port_and_ppk_path.jpg +0 -0
  268. data/test/buildbot/master/public_html/static/images/windows/ppk_selection.jpg +0 -0
  269. data/test/buildbot/master/public_html/static/images/windows/putty_first_screen.jpg +0 -0
  270. data/test/buildbot/master/public_html/static/images/windows/save_result.jpg +0 -0
  271. data/test/buildbot/master/public_html/static/images/windows/vbox_manage_default_location.jpg +0 -0
  272. data/test/buildbot/master/public_html/static/js/bootstrap-tabs.js +80 -0
  273. data/test/buildbot/master/public_html/static/js/jquery-1.7.min.js +4 -0
  274. data/test/buildbot/master/templates/authfail.html +9 -0
  275. data/test/buildbot/master/templates/build.html +205 -0
  276. data/test/buildbot/master/templates/builder.html +118 -0
  277. data/test/buildbot/master/templates/builders.html +33 -0
  278. data/test/buildbot/master/templates/buildslave.html +72 -0
  279. data/test/buildbot/master/templates/buildslaves.html +70 -0
  280. data/test/buildbot/master/templates/change.html +15 -0
  281. data/test/buildbot/master/templates/layouts/base.html +58 -0
  282. data/test/buildbot/master/templates/macros/box.html +37 -0
  283. data/test/buildbot/master/templates/macros/build_line.html +50 -0
  284. data/test/buildbot/master/templates/macros/change.html +81 -0
  285. data/test/buildbot/master/templates/macros/forms.html +300 -0
  286. data/test/buildbot/master/templates/root.html +42 -0
  287. data/test/buildbot/master/templates/waterfall.html +53 -0
  288. data/test/buildbot/requirements.txt +4 -0
  289. data/test/buildbot/scripts/deploy.sh +38 -0
  290. data/test/buildbot/scripts/setup.sh +107 -0
  291. data/test/buildbot/slave/buildbot.tac +43 -0
  292. data/test/buildbot/slave/info/admin +1 -0
  293. data/test/buildbot/slave/info/host +1 -0
  294. data/test/buildbot/tests/__init__.py +0 -0
  295. data/test/buildbot/tests/master/__init__.py +0 -0
  296. data/test/buildbot/tests/master/test_slaves.py +41 -0
  297. data/test/buildbot/vendor/choices-0.4.0.tar.gz +0 -0
  298. data/test/config/acceptance_boxes.yml +7 -0
  299. data/test/support/isolated_environment.rb +46 -0
  300. data/test/support/tempdir.rb +34 -0
  301. data/test/unit/base.rb +21 -0
  302. data/test/unit/support/isolated_environment.rb +47 -0
  303. data/test/unit/support/shared/base_context.rb +30 -0
  304. data/test/unit/vagrant/action/builder_test.rb +156 -0
  305. data/test/unit/vagrant/action/environment_test.rb +16 -0
  306. data/test/unit/vagrant/action/runner_test.rb +65 -0
  307. data/test/unit/vagrant/action/warden_test.rb +92 -0
  308. data/test/unit/vagrant/box_collection_test.rb +56 -0
  309. data/test/unit/vagrant/box_test.rb +34 -0
  310. data/test/unit/vagrant/command/base_test.rb +150 -0
  311. data/test/unit/vagrant/config/base_test.rb +48 -0
  312. data/test/unit/vagrant/config/loader_test.rb +79 -0
  313. data/test/unit/vagrant/config/ssh_test.rb +17 -0
  314. data/test/unit/vagrant/config/top_test.rb +69 -0
  315. data/test/unit/vagrant/config/vm_test.rb +71 -0
  316. data/test/unit/vagrant/config_test.rb +27 -0
  317. data/test/unit/vagrant/data_store_test.rb +79 -0
  318. data/test/unit/vagrant/downloaders/base_test.rb +18 -0
  319. data/test/unit/vagrant/downloaders/file_test.rb +75 -0
  320. data/test/unit/vagrant/downloaders/http_test.rb +19 -0
  321. data/test/unit/vagrant/environment_test.rb +220 -0
  322. data/test/unit/vagrant/hosts_test.rb +36 -0
  323. data/test/unit/vagrant/registry_test.rb +74 -0
  324. data/test/unit/vagrant/util/ansi_escape_code_remover_test.rb +16 -0
  325. data/test/unit/vagrant/util/file_checksum_test.rb +23 -0
  326. data/test/unit/vagrant/util/hash_with_indifferent_access_test.rb +38 -0
  327. data/test/unit/vagrant/util/is_port_open_test.rb +53 -0
  328. data/test/unit/vagrant/util/line_endings_helper_test.rb +16 -0
  329. data/test/unit/vagrant/util/network_ip_test.rb +17 -0
  330. data/test/unit/vagrant/util/retryable_test.rb +106 -0
  331. data/test/unit/vagrant_test.rb +27 -0
  332. data/test/unit_legacy/locales/en.yml +8 -0
  333. data/test/unit_legacy/test_helper.rb +32 -0
  334. data/test/unit_legacy/vagrant/action/box/destroy_test.rb +18 -0
  335. data/test/unit_legacy/vagrant/action/box/download_test.rb +125 -0
  336. data/test/unit_legacy/vagrant/action/box/package_test.rb +25 -0
  337. data/test/unit_legacy/vagrant/action/box/unpackage_test.rb +84 -0
  338. data/test/unit_legacy/vagrant/action/box/verify_test.rb +30 -0
  339. data/test/unit_legacy/vagrant/action/env/set_test.rb +24 -0
  340. data/test/unit_legacy/vagrant/action/general/package_test.rb +268 -0
  341. data/test/unit_legacy/vagrant/action/general/validate_test.rb +31 -0
  342. data/test/unit_legacy/vagrant/action/vm/boot_test.rb +66 -0
  343. data/test/unit_legacy/vagrant/action/vm/check_accessible_test.rb +61 -0
  344. data/test/unit_legacy/vagrant/action/vm/check_box_test.rb +61 -0
  345. data/test/unit_legacy/vagrant/action/vm/check_guest_additions_test.rb +9 -0
  346. data/test/unit_legacy/vagrant/action/vm/clean_machine_folder_test.rb +84 -0
  347. data/test/unit_legacy/vagrant/action/vm/clear_forwarded_ports_test.rb +52 -0
  348. data/test/unit_legacy/vagrant/action/vm/clear_nfs_exports_test.rb +22 -0
  349. data/test/unit_legacy/vagrant/action/vm/clear_shared_folders_test.rb +40 -0
  350. data/test/unit_legacy/vagrant/action/vm/customize_test.rb +37 -0
  351. data/test/unit_legacy/vagrant/action/vm/destroy_test.rb +25 -0
  352. data/test/unit_legacy/vagrant/action/vm/destroy_unused_network_interfaces_test.rb +49 -0
  353. data/test/unit_legacy/vagrant/action/vm/discard_state_test.rb +45 -0
  354. data/test/unit_legacy/vagrant/action/vm/export_test.rb +107 -0
  355. data/test/unit_legacy/vagrant/action/vm/forward_ports_helpers_test.rb +77 -0
  356. data/test/unit_legacy/vagrant/action/vm/forward_ports_test.rb +197 -0
  357. data/test/unit_legacy/vagrant/action/vm/halt_test.rb +79 -0
  358. data/test/unit_legacy/vagrant/action/vm/host_name_test.rb +36 -0
  359. data/test/unit_legacy/vagrant/action/vm/import_test.rb +66 -0
  360. data/test/unit_legacy/vagrant/action/vm/match_mac_address_test.rb +40 -0
  361. data/test/unit_legacy/vagrant/action/vm/modify_test.rb +38 -0
  362. data/test/unit_legacy/vagrant/action/vm/network_test.rb +286 -0
  363. data/test/unit_legacy/vagrant/action/vm/nfs_helpers_test.rb +26 -0
  364. data/test/unit_legacy/vagrant/action/vm/nfs_test.rb +260 -0
  365. data/test/unit_legacy/vagrant/action/vm/package_test.rb +25 -0
  366. data/test/unit_legacy/vagrant/action/vm/package_vagrantfile_test.rb +46 -0
  367. data/test/unit_legacy/vagrant/action/vm/provision_test.rb +65 -0
  368. data/test/unit_legacy/vagrant/action/vm/provisioner_cleanup_test.rb +56 -0
  369. data/test/unit_legacy/vagrant/action/vm/resume_test.rb +35 -0
  370. data/test/unit_legacy/vagrant/action/vm/share_folders_test.rb +144 -0
  371. data/test/unit_legacy/vagrant/action/vm/suspend_test.rb +35 -0
  372. data/test/unit_legacy/vagrant/action_test.rb +89 -0
  373. data/test/unit_legacy/vagrant/box_collection_test.rb +45 -0
  374. data/test/unit_legacy/vagrant/box_test.rb +74 -0
  375. data/test/unit_legacy/vagrant/cli_test.rb +35 -0
  376. data/test/unit_legacy/vagrant/command/base_test.rb +23 -0
  377. data/test/unit_legacy/vagrant/command/group_base_test.rb +15 -0
  378. data/test/unit_legacy/vagrant/command/helpers_test.rb +88 -0
  379. data/test/unit_legacy/vagrant/command/init_test.rb +10 -0
  380. data/test/unit_legacy/vagrant/command/package_test.rb +27 -0
  381. data/test/unit_legacy/vagrant/config/base_test.rb +52 -0
  382. data/test/unit_legacy/vagrant/config/error_recorder_test.rb +18 -0
  383. data/test/unit_legacy/vagrant/config/ssh_test.rb +12 -0
  384. data/test/unit_legacy/vagrant/config/vagrant_test.rb +35 -0
  385. data/test/unit_legacy/vagrant/config/vm/provisioner_test.rb +92 -0
  386. data/test/unit_legacy/vagrant/config/vm_test.rb +47 -0
  387. data/test/unit_legacy/vagrant/config_test.rb +148 -0
  388. data/test/unit_legacy/vagrant/downloaders/http_test.rb +93 -0
  389. data/test/unit_legacy/vagrant/environment_test.rb +539 -0
  390. data/test/unit_legacy/vagrant/errors_test.rb +42 -0
  391. data/test/unit_legacy/vagrant/hosts/base_test.rb +46 -0
  392. data/test/unit_legacy/vagrant/hosts/bsd_test.rb +53 -0
  393. data/test/unit_legacy/vagrant/hosts/linux_test.rb +54 -0
  394. data/test/unit_legacy/vagrant/plugin_test.rb +9 -0
  395. data/test/unit_legacy/vagrant/provisioners/base_test.rb +63 -0
  396. data/test/unit_legacy/vagrant/provisioners/chef_client_test.rb +190 -0
  397. data/test/unit_legacy/vagrant/provisioners/chef_solo_test.rb +115 -0
  398. data/test/unit_legacy/vagrant/provisioners/chef_test.rb +209 -0
  399. data/test/unit_legacy/vagrant/provisioners/puppet_server_test.rb +68 -0
  400. data/test/unit_legacy/vagrant/provisioners/puppet_test.rb +182 -0
  401. data/test/unit_legacy/vagrant/provisioners/shell_test.rb +79 -0
  402. data/test/unit_legacy/vagrant/ssh/session_test.rb +40 -0
  403. data/test/unit_legacy/vagrant/ssh_test.rb +304 -0
  404. data/test/unit_legacy/vagrant/systems/base_test.rb +18 -0
  405. data/test/unit_legacy/vagrant/systems/linux_test.rb +104 -0
  406. data/test/unit_legacy/vagrant/util/busy_test.rb +106 -0
  407. data/test/unit_legacy/vagrant/util/counter_test.rb +29 -0
  408. data/test/unit_legacy/vagrant/util/platform_test.rb +18 -0
  409. data/test/unit_legacy/vagrant/util/stacked_proc_runner_test.rb +43 -0
  410. data/test/unit_legacy/vagrant/util/template_renderer_test.rb +145 -0
  411. data/test/unit_legacy/vagrant/vm_test.rb +300 -0
  412. data/vagrant-fixed-ssh.gemspec +70 -0
  413. metadata +712 -0
@@ -0,0 +1,46 @@
1
+ # OS-specific
2
+ .DS_Store
3
+
4
+ # Vagrant stuff
5
+ acceptance_config.yml
6
+ boxes/*
7
+ test/buildbot/config.cfg
8
+ test/buildbot/env
9
+ test/buildbot/master/http.log
10
+ test/buildbot/master/master.cfg.sample
11
+ test/buildbot/master/twistd.log
12
+ test/buildbot/master/twistd.pid
13
+ test/buildbot/master/state.sqlite
14
+ test/buildbot/master/osx-*/
15
+ test/buildbot/master/linux-*/
16
+ test/buildbot/master/win-*/
17
+ test/buildbot/slave/twistd.hostname
18
+ test/buildbot/slave/twistd.log
19
+ test/buildbot/slave/twistd.pid
20
+ test/buildbot/slave/osx-*/
21
+ test/buildbot/slave/linux-*/
22
+ test/buildbot/slave/win-*/
23
+ Vagrantfile
24
+ .vagrant
25
+
26
+ # Bundler/Rubygems
27
+ .bundle
28
+ pkg/*
29
+ tags
30
+ Gemfile.lock
31
+ test/tmp/
32
+
33
+ # Documentation
34
+ _site/*
35
+ .yardoc/
36
+ doc/
37
+
38
+ # Python
39
+ *.pyc
40
+
41
+ # Rubinius
42
+ *.rbc
43
+
44
+ # IDE junk
45
+ .idea/*
46
+ *.iml
@@ -0,0 +1 @@
1
+ -m markdown
@@ -0,0 +1,723 @@
1
+ ## 1.0.7 (March 13, 2013)
2
+
3
+ - Detect if a newer version of Vagrant ran and error if it did,
4
+ because we're not forward-compatible.
5
+ - Check for guest additions version AFTER booting. [GH-1179]
6
+ - Quote IdentityFile in `ssh-config` so private keys with spaces in
7
+ the path work. [GH-1322]
8
+ - Fix issue where multiple Puppet module paths can be re-ordered [GH-964]
9
+ - Shell provisioner won't hang on Windows anymore due to unclosed
10
+ tempfile. [GH-1040]
11
+ - Retry setting default VM name, since it sometimes fails first time. [GH-1368]
12
+ - Support setting hostname on Suse [GH-1063]
13
+
14
+ ## 1.0.6 (December 21, 2012)
15
+
16
+ - Shell provisioner outputs proper line endings on Windows [GH-1164]
17
+ - SSH upload opens file to stream which fixes strange upload issues.
18
+ - Check for proper exit codes for Puppet, since multiple exit codes
19
+ can mean success. [GH-1180]
20
+ - Fix issue where DNS doesn't resolve properly for 12.10. [GH-1176]
21
+ - Allow hostname to be a substring of the box name for Ubuntu [GH-1163]
22
+ - Use `puppet agent` instead of `puppetd` to be Puppet 3.x
23
+ compatible. [GH-1169]
24
+ - Work around bug in VirtualBox exposed by bug in OS X 10.8 where
25
+ VirtualBox executables couldn't handle garbage being injected into
26
+ stdout by OS X.
27
+
28
+ ## 1.0.5 (September 18, 2012)
29
+
30
+ - Work around a critical bug in VirtualBox 4.2.0 on Windows that
31
+ causes Vagrant to not work. [GH-1130]
32
+ - Plugin loading works better on Windows by using the proper
33
+ file path separator.
34
+ - NFS works on Fedora 16+. [GH-1140]
35
+ - NFS works with newer versions of Arch hosts that use systemd. [GH-1142]
36
+
37
+ ## 1.0.4 (September 13, 2012)
38
+
39
+ - VirtualBox 4.2 driver. [GH-1120]
40
+ - Correct `ssh-config` help to use `--host`, not `-h`.
41
+ - Use "127.0.0.1" instead of "localhost" for port checking to fix problem
42
+ where "localhost" is not properly setup. [GH-1057]
43
+ - Disable read timeout on Net::HTTP to avoid `rbuf_fill` error. [GH-1072]
44
+ - Retry SSH on `EHOSTUNREACH` errors.
45
+ - Add missing translation for "saving" state. [GH-1110]
46
+
47
+ ## 1.0.3 (May 1, 2012)
48
+
49
+ - Don't enable NAT DNS proxy on machines where resolv.conf already points
50
+ to localhost. This allows Vagrant to work once again with Ubuntu
51
+ 12.04. [GH-909]
52
+
53
+ ## 1.0.2 (March 25, 2012)
54
+
55
+ - Provisioners will still mount folders and such if `--no-provision` is
56
+ used, so that `vagrant provision` works. [GH-803]
57
+ - Nicer error message if an unsupported SSH key type is used. [GH-805]
58
+ - Gentoo guests can now have their host names changed. [GH-796]
59
+ - Relative paths can be used for the `config.ssh.private_key_path`
60
+ setting. [GH-808]
61
+ - `vagrant ssh` now works on Solaris, where `IdentitiesOnly` was not
62
+ an available option. [GH-820]
63
+ - Output works properly in the face of broken pipes. [GH-819]
64
+ - Enable Host IO Cache on the SATA controller by default.
65
+ - Chef-solo provisioner now supports encrypted data bags. [GH-816]
66
+ - Enable the NAT DNS proxy by default, allowing your DNS to continue
67
+ working when you switch networks. [GH-834]
68
+ - Checking for port forwarding collisions also checks for other applications
69
+ that are potentially listening on that port as well. [GH-821]
70
+ - Multiple VM names can be specified for the various commands now. For
71
+ example: `vagrant up web db service`. [GH-795]
72
+ - More robust error handling if a VM fails to boot. The error message
73
+ is much clearer now. [GH-825]
74
+
75
+ ## 1.0.1 (March 11, 2012)
76
+
77
+ - Installers are now bundled with Ruby 1.9.3p125. Previously they were
78
+ bundled with 1.9.3p0. This actually fixes some IO issues with Windows.
79
+ - Windows installer now outputs a `vagrant` binary that will work in msys
80
+ or Cygwin environments.
81
+ - Fix crashing issue which manifested itself in multi-VM environments.
82
+ - Add missing `rubygems` require in `environment.rb` to avoid
83
+ possible load errors. [GH-781]
84
+ - `vagrant destroy` shows a nice error when called without a
85
+ TTY (and hence can't confirm). [GH-779]
86
+ - Fix an issue with the `:vagrantfile_name` option to `Vagrant::Environment`
87
+ not working properly. [GH-778]
88
+ - `VAGRANT_CWD` environmental variable can be used to set the CWD to
89
+ something other than the current directory.
90
+ - Downloading boxes from servers that don't send a content-length
91
+ now works properly. [GH-788]
92
+ - The `:facter` option now works for puppet server. [GH-790]
93
+ - The `--no-provision` and `--provision-with` flags are available to
94
+ `vagrant reload` now.
95
+ - `:openbsd` guest which supports only halting at the moment. [GH-773]
96
+ - `ssh-config -h` now shows help, instead of assuming a host is being
97
+ specified. For host, you can still use `--host`. [GH-793]
98
+
99
+ ## 1.0.0 (March 6, 2012)
100
+
101
+ - `vagrant gem` should now be used to install Vagrant plugins that are
102
+ gems. This installs the gems to a private gem folder that Vagrant adds
103
+ to its own load path. This isolates Vagrant-related gems from system
104
+ gems.
105
+ - Plugin loading no longer happens right when Vagrant is loaded, but when
106
+ a Vagrant environment is loaded. I don't anticipate this causing any
107
+ problems but it is a backwards incompatible change should a plugin
108
+ depend on this (but I don't see any reason why they would).
109
+ - `vagrant destroy` now asks for confirmation by default. This can be
110
+ overridden with the `--force` flag. [GH-699]
111
+ - Fix issue with Puppet config inheritance. [GH-722]
112
+ - Fix issue where starting a VM on some systems was incorrectly treated
113
+ as failing. [GH-720]
114
+ - It is now an error to specify the packaging `output` as a directory. [GH-730]
115
+ - Unix-style line endings are used properly for guest OS. [GH-727]
116
+ - Retry certain VirtualBox operations, since they intermittently fail.
117
+ [GH-726]
118
+ - Fix issue where Vagrant would sometimes "lose" a VM if an exception
119
+ occurred. [GH-725]
120
+ - `vagrant destroy` destroys virtual machines in reverse order. [GH-739]
121
+ - Add an `fsid` option to Linux NFS exports. [GH-736]
122
+ - Fix edge case where an exception could be raised in networking code. [GH-742]
123
+ - Add missing translation for the "guru meditation" state. [GH-745]
124
+ - Check that VirtualBox exists before certain commands. [GH-746]
125
+ - NIC type can be defined for host-only network adapters. [GH-750]
126
+ - Fix issue where re-running chef-client would sometimes cause
127
+ problems due to file permissions. [GH-748]
128
+ - FreeBSD guests can now have their hostnames changed. [GH-757]
129
+ - FreeBSD guests now support host only networking and bridged networking. [GH-762]
130
+ - `VM#run_action` is now public so plugin-devs can hook into it.
131
+ - Fix crashing bug when attempting to run commands on the "primary"
132
+ VM in a multi-VM environment. [GH-761]
133
+ - With puppet you can now specify `:facter` as a dictionary of facts to
134
+ override what is generated by Puppet. [GH-753]
135
+ - Automatically convert all arguments to `customize` to strings.
136
+ - openSUSE host system. [GH-766]
137
+ - Fix subprocess IO deadlock which would occur on Windows. [GH-765]
138
+ - Fedora 16 guest support. [GH-772]
139
+
140
+ ## 0.9.7 (February 9, 2012)
141
+
142
+ - Fix regression where all subprocess IO simply didn't work with
143
+ Windows. [GH-721]
144
+
145
+ ## 0.9.6 (February 7, 2012)
146
+
147
+ - Fix strange issue with inconsistent childprocess reads on JRuby. [GH-711]
148
+ - `vagrant ssh` does a direct `exec()` syscall now instead of going through
149
+ the shell. This makes it so things like shell expansion oddities no longer
150
+ cause problems. [GH-715]
151
+ - Fix crashing case if there are no ports to forward.
152
+ - Fix issue surrounding improper configuration of host only networks on
153
+ RedHat guests. [GH-719]
154
+ - NFS should work properly on Gentoo. [GH-706]
155
+
156
+ ## 0.9.5 (February 5, 2012)
157
+
158
+ - Fix crashing case when all network options are `:auto_config false`.
159
+ [GH-689]
160
+ - Type of network adapter can be specified with `:nic_type`. [GH-690]
161
+ - The NFS version can be specified with the `:nfs_version` option
162
+ on shared folders. [GH-557]
163
+ - Greatly improved FreeBSD guest and host support. [GH-695]
164
+ - Fix instability with RedHat guests and host only and bridged networks.
165
+ [GH-698]
166
+ - When using bridged networking, only list the network interfaces
167
+ that are up as choices. [GH-701]
168
+ - More intelligent handling of the `certname` option for puppet
169
+ server. [GH-702]
170
+ - You may now explicitly set the network to bridge to in the Vagrantfile
171
+ using the `:bridge` parameter. [GH-655]
172
+
173
+ ## 0.9.4 (January 28, 2012)
174
+
175
+ - Important internal changes to middlewares that make plugin developer's
176
+ lives much easier. [GH-684]
177
+ - Match VM names that have parens, brackets, etc.
178
+ - Detect when the VirtualBox kernel module is not loaded and error. [GH-677]
179
+ - Set `:auto_config` to false on any networking option to not automatically
180
+ configure it on the guest. [GH-663]
181
+ - NFS shared folder guest paths can now contain shell expansion characters
182
+ such as `~`.
183
+ - NFS shared folders with a `:create` flag will have their host folders
184
+ properly created if they don't exist. [GH-667]
185
+ - Fix the precedence for Arch, Ubuntu, and FreeBSD host classes so
186
+ they are properly detected. [GH-683]
187
+ - Fix issue where VM import sometimes made strange VirtualBox folder
188
+ layouts. [GH-669]
189
+ - Call proper `id` command on Solaris. [GH-679]
190
+ - More accurate VBoxManage error detection.
191
+ - Shared folders can now be marked as transient using the `:transient`
192
+ flag. [GH-688]
193
+
194
+ ## 0.9.3 (January 24, 2012)
195
+
196
+ - Proper error handling for not enough arguments to `box` commands.
197
+ - Fix issue causing crashes with bridged networking. [GH-673]
198
+ - Ignore host only network interfaces that are "down." [GH-675]
199
+ - Use "printf" instead of "echo" to determine shell expanded files paths
200
+ which is more generally POSIX compliant. [GH-676]
201
+
202
+ ## 0.9.2 (January 20, 2012)
203
+
204
+ - Support shell expansions in shared folder guest paths again. [GH-656]
205
+ - Fix issue where Chef solo always expected the host to have a
206
+ "cookbooks" folder in their directory. [GH-638]
207
+ - Fix `forward_agent` not working when outside of blocks. [GH-651]
208
+ - Fix issue causing custom guest implementations to not load properly.
209
+ - Filter clear screen character out of output on SSH.
210
+ - Log output now goes on `stderr`, since it is utility information.
211
+ - Get rid of case where a `NoMethodError` could be raised while
212
+ determining VirtualBox version. [GH-658]
213
+ - Debian/Ubuntu uses `ifdown` again, instead of `ifconfig xxx down`, since
214
+ the behavior seems different/wrong.
215
+ - Give a nice error if `:vagrant` is used as a JSON key, since Vagrant
216
+ uses this. [GH-661]
217
+ - If there is only one bridgable interface, use that without asking
218
+ the user. [GH-655]
219
+ - The shell will have color output if ANSICON is installed on Windows. [GH-666]
220
+
221
+ ## 0.9.1 (January 18, 2012)
222
+
223
+ - Use `ifconfig device down` instead of `ifdown`. [GH-649]
224
+ - Clearer invalid log level error. [GH-645]
225
+ - Fix exception raised with NFS `recover` method.
226
+ - Fix `ui` `NoMethodError` exception in puppet server.
227
+ - Fix `vagrant box help` on Ruby 1.8.7. [GH-647]
228
+
229
+ ## 0.9.0 (January 17, 2012)
230
+
231
+ - VirtualBox 4.0 support backported in addition to supporting VirtualBox 4.1.
232
+ - `config.vm.network` syntax changed so that the first argument is now the type
233
+ of argument. Previously where you had `config.vm.network "33.33.33.10"` you
234
+ should now put `config.vm.network :hostonly, "33.33.33.10"`. This is in order
235
+ to support bridged networking, as well.
236
+ - `config.vm.forward_port` no longer requires a name parameter.
237
+ - Bridged networking. `config.vm.network` with `:bridged` as the option will
238
+ setup a bridged network.
239
+ - Host only networks can be configured with DHCP now. Specify `:dhcp` as
240
+ the IP and it will be done.
241
+ - `config.vm.customize` now takes a command to send to `VBoxManage`, so any
242
+ arbitrary command can be sent. The older style of passing a block no longer
243
+ works and Vagrant will give a proper error message if it notices this old-style
244
+ being used.
245
+ - `config.ssh.forwarded_port_key` is gone. Vagrant no longer cares about
246
+ forwarded port names for any reason. Please use `config.ssh.guest_port`
247
+ (more below).
248
+ - `config.ssh.forwarded_port_destination` has been replaced by
249
+ `config.ssh.guest_port` which more accurately reflects what it is
250
+ used for. Vagrant will automatically scan forwarded ports that match the
251
+ guest port to find the SSH port.
252
+ - Logging. The entire Vagrant source has had logging sprinkled throughout
253
+ to make debugging issues easier. To enable logging, set the VAGRANT_LOG
254
+ environmental variable to the log level you wish to see. By default,
255
+ logging is silent.
256
+ - `system` renamed to `guest` throughout the source. Any `config.vm.system`
257
+ configurations must be changed to `config.vm.guest`
258
+ - Puppet provisioner no longer defaults manifest to "box.pp." Instead, it
259
+ is now "default.pp"
260
+ - All Vagrant commands that take a VM name in a Multi-VM environment
261
+ can now be given a regular expression. If the name starts and ends with a "/"
262
+ then it is assumed to be a regular expression. [GH-573]
263
+ - Added a "--plain" flag to `vagrant ssh` which will cause Vagrant to not
264
+ perform any authentication. It will simply `ssh` into the proper IP and
265
+ port of the virtual machine.
266
+ - If a shared folder now has a `:create` flag set to `true`, the path on the
267
+ host will be created if it doesn't exist.
268
+ - Added `--force` flag to `box add`, which will overwite any existing boxes
269
+ if they exist. [GH-631]
270
+ - Added `--provision-with` to `up` which configures what provisioners run,
271
+ by shortcut. [GH-367]
272
+ - Arbitrary mount options can be passed with `:extra` to any shared
273
+ folders. [GH-551]
274
+ - Options passed after a `--` to `vagrant ssh` are now passed directly to
275
+ `ssh`. [GH-554]
276
+ - Ubuntu guests will now emit a `vagrant-mounted` upstart event after shared
277
+ folders are mounted.
278
+ - `attempts` is a new option on chef client and chef solo provisioners. This
279
+ will run the provisioner multiple times until erroring about failing
280
+ convergence. [GH-282]
281
+ - Removed Thor as a dependency for the command line interfaces. This resulted
282
+ in general speed increases across all command line commands.
283
+ - Linux uses `shutdown -h` instead of `halt` to hopefully more consistently
284
+ power off the system. [GH-575]
285
+ - Tweaks to SSH to hopefully be more reliable in coming up.
286
+ - Helpful error message when SCP is unavailable in the guest. [GH-568]
287
+ - Error message for improperly packaged box files. [GH-198]
288
+ - Copy insecure private key to user-owned directory so even
289
+ `sudo` installed Vagrant installations work. [GH-580]
290
+ - Provisioner stdout/stderr is now color coded based on stdout/stderr.
291
+ stdout is green, stderr is red. [GH-595]
292
+ - Chef solo now prompts users to run a `reload` if shared folders
293
+ are not found on the VM. [GH-253]
294
+ - "--no-provision" once again works for certain commands. [GH-591]
295
+ - Resuming a VM from a saved state will show an error message if there
296
+ would be port collisions. [GH-602]
297
+ - `vagrant ssh -c` will now exit with the same exit code as the command
298
+ run. [GH-598]
299
+ - `vagrant ssh -c` will now send stderr to stderr and stdout to stdout
300
+ on the host machine, instead of all output to stdout.
301
+ - `vagrant box add` path now accepts unexpanded shell paths such as
302
+ `~/foo` and will properly expand them. [GH-633]
303
+ - Vagrant can now be interrupted during the "importing" step.
304
+ - NFS exports will no longer be cleared when an expected error occurs. [GH-577]
305
+
306
+ ## 0.8.10 (December 10, 2011)
307
+
308
+ - Revert the SSH tweaks made in 0.8.8. It affected stability
309
+
310
+ ## 0.8.8 (December 1, 2011)
311
+
312
+ - Mount shared folders shortest to longest to avoid mounting
313
+ subfolders first. [GH-525]
314
+ - Support for basic HTTP auth in the URL for boxes.
315
+ - Solaris support for host only networks. [GH-533]
316
+ - `vagrant init` respects `Vagrant::Environment` cwd. [GH-528]
317
+ - `vagrant` commands will not output color when stdout is
318
+ not a TTY.
319
+ - Fix issue where `box_url` set with multiple VMs could cause issues. [GH-564]
320
+ - Chef provisioners no longer depend on a "v-root" share being
321
+ available. [GH-556]
322
+ - NFS should work for FreeBSD hosts now. [GH-510]
323
+ - SSH executed methods respect `config.ssh.max_tries`. [GH-508]
324
+ - `vagrant box add` now respects the "no_proxy" environmental variable.
325
+ [GH-502]
326
+ - Tweaks that should make "Waiting for VM to boot" slightly more
327
+ reliable.
328
+ - Add comments to Vagrantfile to make it detected as Ruby file for
329
+ `vi` and `emacs`. [GH-515]
330
+ - More correct guest addition version checking. [GH-514]
331
+ - Chef solo support on Windows is improved. [GH-542]
332
+ - Put encrypted data bag secret into `/tmp` by default so that
333
+ permissions are almost certainly guaranteed. [GH-512]
334
+
335
+ ## 0.8.7 (September 13, 2011)
336
+
337
+ - Fix regression with remote paths from chef-solo. [GH-431]
338
+ - Fix issue where Vagrant crashes if `.vagrant` file becomes invalid. [GH-496]
339
+ - Issue a warning instead of an error for attempting to forward a port
340
+ <= 1024. [GH-487]
341
+
342
+ ## 0.8.6 (August 28, 2011)
343
+
344
+ - Fix issue with download progress not properly clearing the line. [GH-476]
345
+ - NFS should work properly on Fedora. [GH-450]
346
+ - Arguments can be specified to the `shell` provisioner via the `args` option. [GH-475]
347
+ - Vagrant behaves much better when there are "inaccessible" VMs. [GH-453]
348
+
349
+ ## 0.8.5 (August 15, 2011)
350
+
351
+ Note: 0.8.3 and 0.8.4 was yanked due to RubyGems encoding issue.
352
+
353
+ - Fix SSH `exec!` to inherit proper `$PATH`. [GH-426]
354
+ - Chef client now accepts an empty (`nil`) run list again. [GH-429]
355
+ - Fix incorrect error message when running `provision` on halted VM. [GH-447]
356
+ - Checking guest addition versions now ignores OSE. [GH-438]
357
+ - Chef solo from a remote URL fixed. [GH-431]
358
+ - Arch linux support: host only networks and changing the host name. [GH-439] [GH-448]
359
+ - Chef solo `roles_path` and `data_bags_path` can only be be single paths. [GH-446]
360
+ - Fix `virtualbox_not_detected` error message to require 4.1.x. [GH-458]
361
+ - Add shortname (`hostname -s`) for hostname setting on RHEL systems. [GH-456]
362
+ - `vagrant ssh -c` output no longer has a prefix and respects newlines
363
+ from the output. [GH-462]
364
+
365
+ ## 0.8.2 (July 22, 2011)
366
+
367
+ - Fix issue with SSH disconnects not reconnecting.
368
+ - Fix chef solo simply not working with roles/data bags. [GH-425]
369
+ - Multiple chef solo provisioners now work together.
370
+ - Update Puppet provisioner so no deprecation warning is shown. [GH-421]
371
+ - Removed error on "provisioner=" in config, as this has not existed
372
+ for some time now.
373
+ - Add better validation for networking.
374
+
375
+ ## 0.8.1 (July 20, 2011)
376
+
377
+ - Repush of 0.8.0 to fix a Ruby 1.9.2 RubyGems issue.
378
+
379
+ ## 0.8.0 (July 20, 2011)
380
+
381
+ - VirtualBox 4.1 support _only_. Previous versions of VirtualBox
382
+ are supported by earlier versions of Vagrant.
383
+ - Performance optimizations in `virtualbox` gem. Huge speed gains.
384
+ - `:chef_server` provisioner is now `:chef_client`. [GH-359]
385
+ - SSH connection is now cached after first access internally,
386
+ speeding up `vagrant up`, `reload`, etc. quite a bit.
387
+ - Actions which modify the VM now occur much more quickly,
388
+ greatly speeding up `vagrant up`, `reload`, etc.
389
+ - SUSE host only networking support. [GH-369]
390
+ - Show nice error message for invalid HTTP responses for HTTP
391
+ downloader. [GH-403]
392
+ - New `:inline` option for shell provisioner to provide inline
393
+ scripts as a string. [GH-395]
394
+ - Host only network now properly works on multiple adapters. [GH-365]
395
+ - Can now specify owner/group for regular shared folders. [GH-350]
396
+ - `ssh_config` host name will use VM name if given. [GH-332]
397
+ - `ssh` `-e` flag changed to `-c` to align with `ssh` standard
398
+ behavior. [GH-323]
399
+ - Forward agent and forward X11 settings properly appear in
400
+ `ssh_config` output. [GH-105]
401
+ - Chef JSON can now be set with `chef.json =` instead of the old
402
+ `merge` technique. [GH-314]
403
+ - Provisioner configuration is no longer cleared when the box
404
+ needs to be downloaded during an `up`. [GH-308]
405
+ - Multiple Chef provisioners no longer overwrite cookbook folders. [GH-407]
406
+ - `package` won't delete previously existing file. [GH-408]
407
+ - Vagrantfile can be lowercase now. [GH-399]
408
+ - Only one copy of Vagrant may be running at any given time. [GH-364]
409
+ - Default home directory for Vagrant moved to `~/.vagrant.d` [GH-333]
410
+ - Specify a `forwarded_port_destination` for SSH configuration and
411
+ SSH port searching will fall back to that if it can't find any
412
+ other port. [GH-375]
413
+
414
+ ## 0.7.8 (July 19, 2011)
415
+
416
+ - Make sure VirtualBox version check verifies that it is 4.0.x.
417
+
418
+ ## 0.7.7 (July 12, 2011)
419
+
420
+ - Fix crashing bug with Psych and Ruby 1.9.2. [GH-411]
421
+
422
+ ## 0.7.6 (July 2, 2011)
423
+
424
+ - Run Chef commands in a single command. [GH-390]
425
+ - Add `nfs` option for Chef to mount Chef folders via NFS. [GH-378]
426
+ - Add translation for `aborted` state in VM. [GH-371]
427
+ - Use full paths with the Chef provisioner so that restart cookbook will
428
+ work. [GH-374]
429
+ - Add "--no-color" as an argument and no colorized output will be used. [GH-379]
430
+ - Added DEVICE option to the RedHat host only networking entry, which allows
431
+ host only networking to work even if the VM has multiple NICs. [GH-382]
432
+ - Touch the network configuration file for RedHat so that the `sed` works
433
+ with host only networking. [GH-381]
434
+ - Load prerelease versions of plugins if available.
435
+ - Do not load a plugin if it depends on an invalid version of Vagrant.
436
+ - Encrypted data bag support in Chef server provisioner. [GH-398]
437
+ - Use the `-H` flag to set the proper home directory for `sudo`. [GH-370]
438
+
439
+ ## 0.7.5 (May 16, 2011)
440
+
441
+ - `config.ssh.port` can be specified and takes highest precedence if specified.
442
+ Otherwise, Vagrant will still attempt to auto-detect the port. [GH-363]
443
+ - Get rid of RubyGems deprecations introduced with RubyGems 1.8.x
444
+ - Search in pre-release gems for plugins as well as release gems.
445
+ - Support for Chef-solo `data_bags_path` [GH-362]
446
+ - Can specify path to Chef binary using `binary_path` [GH-342]
447
+ - Can specify additional environment data for Chef using `binary_env` [GH-342]
448
+
449
+ ## 0.7.4 (May 12, 2011)
450
+
451
+ - Chef environments support (for Chef 0.10) [GH-358]
452
+ - Suppress the "added to known hosts" message for SSH [GH-354]
453
+ - Ruby 1.8.6 support [GH-352]
454
+ - Chef proxy settings now work for chef server [GH-335]
455
+
456
+ ## 0.7.3 (April 19, 2011)
457
+
458
+ - Retry all SSH on Net::SSH::Disconnect in case SSH is just restarting. [GH-313]
459
+ - Add NFS shared folder support for Arch linux. [GH-346]
460
+ - Fix issue with unknown terminal type output for sudo commands.
461
+ - Forwarded port protocol can now be set as UDP. [GH-311]
462
+ - Chef server file cache path and file backup path can be configured. [GH-310]
463
+ - Setting hostname should work on Debian now. [GH-307]
464
+
465
+ ## 0.7.2 (February 8, 2011)
466
+
467
+ - Update JSON dependency to 1.5.1, which works with Ruby 1.9 on
468
+ Windows.
469
+ - Fix sudo issues on sudo < 1.7.0 (again).
470
+ - Fix race condition in SSH, which specifically manifested itself in
471
+ the chef server provisioner. [GH-295]
472
+ - Change sudo shell to use `bash` (configurable). [GH-301]
473
+ - Can now set mac address of host only network. [GH-294]
474
+ - NFS shared folders with spaces now work properly. [GH-293]
475
+ - Failed SSH commands now show output in error message. [GH-285]
476
+
477
+ ## 0.7.1 (January 28, 2011)
478
+
479
+ - Change error output with references to VirtualBox 3.2 to 4.0.
480
+ - Internal SSH through net-ssh now uses `IdentitiesOnly` thanks to
481
+ upstream net-ssh fix.
482
+ - Fix issue causing warnings to show with `forwardx11` enabled for SSH. [GH-279]
483
+ - FreeBSD support for host only networks, NFS, halting, etc. [GH-275]
484
+ - Make SSH commands which use sudo compatible with sudo < 1.7.0. [GH-278]
485
+ - Fix broken puppet server provisioner which called a nonexistent
486
+ method.
487
+ - Default SSH host changed from `localhost` to `127.0.0.1` since
488
+ `localhost` is not always loopback.
489
+ - New `shell` provisioner which simply uploads and executes a script as
490
+ root on the VM.
491
+ - Gentoo host only networking no longer fails if alrady setup. [GH-286]
492
+ - Set the host name of your guest OS with `config.vm.host_name` [GH-273]
493
+ - `vagrant ssh-config` now outputs the configured `config.ssh.host`
494
+
495
+ ## 0.7.0 (January 19, 2011)
496
+
497
+ - VirtualBox 4.0 support. Support for VirtualBox 3.2 is _dropped_, since
498
+ the API is so different. Stay with the 0.6.x series if you have VirtualBox
499
+ 3.2.x.
500
+ - Puppet server provisioner. [GH-262]
501
+ - Use numeric uid/gid in mounting shared folders to increase portability. [GH-252]
502
+ - HTTP downloading follows redirects. [GH-163]
503
+ - Downloaders have clearer output to note what they're doing.
504
+ - Shared folders with no guest path are not automounted. [GH-184]
505
+ - Boxes downloaded during `vagrant up` reload the Vagrantfile config, which
506
+ fixes a problem with box settings not being properly loaded. [GH-231]
507
+ - `config.ssh.forward_x11` to enable the ForwardX11 SSH option. [GH-255]
508
+ - Vagrant source now has a `contrib` directory where contributions of miscellaneous
509
+ addons for Vagrant will be added.
510
+ - Vagrantfiles are now loaded only once (instead of 4+ times) [GH-238]
511
+ - Ability to move home vagrant dir (~/.vagrant) by setting VAGRANT_HOME
512
+ environmental variable.
513
+ - Removed check and error for the "OSE" version of VirtualBox, since with
514
+ VirtualBox 4 this distinction no longer exists.
515
+ - Ability to specify proxy settings for chef. [GH-169]
516
+ - Helpful error message shown if NFS mounting fails. [GH-135]
517
+ - Gentoo guests now support host only networks. [GH-240]
518
+ - RedHat (CentOS included) guests now support host only networks. [GH-260]
519
+ - New Vagrantfile syntax for enabling and configuring provisioners. This
520
+ change is not backwards compatible. [GH-265]
521
+ - Provisioners are now RVM-friendly, meaning if you installed chef or puppet
522
+ with an RVM managed Ruby, Vagrant now finds then. [GH-254]
523
+ - Changed the unused host only network destroy mechanism to check for
524
+ uselessness after the VM is destroyed. This should result in more accurate
525
+ checks.
526
+ - Networks are no longer disabled upon halt/destroy. With the above
527
+ change, its unnecessary.
528
+ - Puppet supports `module_path` configuration to mount local modules directory
529
+ as a shared folder and configure puppet with it. [GH-270]
530
+ - `ssh-config` now outputs `127.0.0.1` as the host instead of `localhost`.
531
+
532
+ ## 0.6.9 (December 21, 2010)
533
+
534
+ - Puppet provisioner. [GH-223]
535
+ - Solaris system configurable to use `sudo`.
536
+ - Solaris system registered, so it can be set with `:solaris`.
537
+ - `vagrant package` include can be a directory name, which will cause the
538
+ contents to be recursively copied into the package. [GH-241]
539
+ - Arbitrary options to puppet binary can be set with `config.puppet.options`. [GH-242]
540
+ - BSD hosts use proper GNU sed syntax for clearing NFS shares. [GH-243]
541
+ - Enumerate VMs in a multi-VM environment in order they were defined. [GH-244]
542
+ - Check for VM boot changed to use `timeout` library, which works better with Windows.
543
+ - Show special error if VirtualBox not detected on 64-bit Windows.
544
+ - Show error to Windows users attempting to use host only networking since
545
+ it doesn't work yet.
546
+
547
+ ## 0.6.8 (November 30, 2010)
548
+
549
+ - Network interfaces are now up/down in distinct commands instead of just
550
+ restarting "networking." [GH-192]
551
+ - Add missing translation for chef binary missing. [GH-203]
552
+ - Fix default settings for Opscode platform and comments. [GH-213]
553
+ - Blank client name for chef server now uses FQDN by default, instead of "client" [GH-214]
554
+ - Run list can now be nil, which will cause it to sync with chef server (when
555
+ chef server is enabled). [GH-214]
556
+ - Multiple NFS folders now work on linux. [GH-215]
557
+ - Add translation for state "stuck" which is very rare. [GH-218]
558
+ - virtualbox gem dependency minimum raised to 0.7.6 to verify FFI < 1.0.0 is used.
559
+ - Fix issue where box downloading from `vagrant up` didn't reload the box collection. [GH-229]
560
+
561
+ ## 0.6.7 (November 3, 2010)
562
+
563
+ - Added validation to verify that a box is specified.
564
+ - Proper error message when box is not found for `config.vm.box`. [GH-195]
565
+ - Fix output of `vagrant status` with multi-vm to be correct. [GH-196]
566
+
567
+ ## 0.6.6 (October 14, 2010)
568
+
569
+ - `vagrant status NAME` works once again. [GH-191]
570
+ - Conditional validation of Vagrantfile so that some commands don't validate. [GH-188]
571
+ - Fix "junk" output for ssh-config. [GH-189]
572
+ - Fix port collision handling with greater than two VMs. [GH-185]
573
+ - Fix potential infinite loop with root path if bad CWD is given to environment.
574
+
575
+ ## 0.6.5 (October 8, 2010)
576
+
577
+ - Validations on base MAC address to avoid situation described in GH-166, GH-181
578
+ from ever happening again.
579
+ - Properly load sub-VM configuration on first-pass of config loading. Solves
580
+ a LOT of problems with multi-VM. [GH-166] [GH-181]
581
+ - Configuration now only validates on final Vagrantfile proc, so multi-VM
582
+ validates correctly.
583
+ - A nice error message is given if ".vagrant" is a directory and therefore
584
+ can't be accessed. [GH-172]
585
+ - Fix plugin loading in a Rails 2.3.x project. [GH-176]
586
+
587
+ ## 0.6.4 (October 4, 2010)
588
+
589
+ - Default VM name is now properly the parent folder of the working directory
590
+ of the environment.
591
+ - Added method to `TestHelpers` to assist with testing new downloaders.
592
+ - `up --no-provision` works again. This disables provisioning during the
593
+ boot process.
594
+ - Action warden doesn't do recovery process on `SystemExit` exceptions,
595
+ allowing the double ctrl-C to work properly again. [related to GH-166]
596
+ - Initial Vagrantfile is now heavily commented with various available
597
+ options. [GH-171]
598
+ - Box add checks if a box already exists before the download. [GH-170]
599
+ - NFS no longer attempts to clean exports file if VM is not created,
600
+ which was causing a stack trace during recovery. [related to GH-166]
601
+ - Basic validation added for Chef configuration (both solo and server).
602
+ - Top config class is now available in all `Vagrant::Config::Base`
603
+ subclasses, which is useful for config validation.
604
+ - Subcommand help shows proper full command in task listing. [GH-168]
605
+ - SSH gives error message if `ssh` binary is not found. [GH-161]
606
+ - SSH gives proper error message if VM is not running. [GH-167]
607
+ - Fix some issues with undefined constants in command errors.
608
+
609
+ ## 0.6.1, 0.6.2, 0.6.3 (September 27, 2010)
610
+
611
+ A lot of quick releases which all were to fix issues with Ruby 1.8.7
612
+ compatibility.
613
+
614
+ ## 0.6.0 (September 27, 2010)
615
+
616
+ - VM name now defaults to the name of the containing folder, plus a timestamp.
617
+ This should make it easier to identify VMs in the VirtualBox GUI.
618
+ - Exposed Vagrant test helpers in `Vagrant::TestHelpers` for plugins to easily
619
+ test themselves against Vagrant environments.
620
+ - **Plugins** have landed. Plugins are simply gems which have a `vagrant_init.rb`
621
+ file somewhere in their load path. Please read the documentation on
622
+ vagrantup.com before attempting to create a plugin (which is very easy)
623
+ for more information on how it all works and also some guidelines.
624
+ - `vagrant package` now takes a `--vagrantfile` option to specify a
625
+ Vagrantfile to package. The `--include` approach for including a Vagrantfile
626
+ no longer works (previously built boxes will continue to work).
627
+ - `vagrant package` has new logic with regards to the `--include` option
628
+ depending on if the file path is relative or absolute (they can be
629
+ intermixed):
630
+ * _Relative_ paths are copied directly into the box, preserving
631
+ their path. So `--include lib/foo` would be in the box as "lib/foo"
632
+ * _Absolute_ paths are simply copied files into the root of the
633
+ box. So `--include /lib/foo` would be in the box as "foo"
634
+ - "vagrant_main" is no longer the default run list. Instead, chef
635
+ run list starts empty. It is up to you to specify all recipes in
636
+ the Vagrantfile now.
637
+ - Fixed various issues with certain action middleware not working if
638
+ the VM was not created.
639
+ - SSH connection is retried 5 times if there is a connection refused.
640
+ Related to GH-140.
641
+ - If `http_proxy` environmental variable is set, it will be used as the proxy
642
+ box adding via http.
643
+ - Remove `config.ssh.password`. It hasn't been used for a few versions
644
+ now and was only kept around to avoid exceptions in Vagrantfiles.
645
+ - Configuration is now validated so improper input can be found in
646
+ Vagrantfiles.
647
+ - Fixed issue with not detecting Vagrantfile at root directory ("/").
648
+ - Vagrant now gives a nice error message if there is a syntax error
649
+ in any Vagrantfile. [GH-154]
650
+ - The format of the ".vagrant" file which stores persisted VMs has
651
+ changed. This is **backwards incompatible**. Will provide an upgrade
652
+ utility prior to 0.6 launch.
653
+ - Every [expected] Vagrant error now exits with a clean error message
654
+ and a unique exit status, and raises a unique exception (if you're
655
+ scripting Vagrant).
656
+ - Added I18n gem dependency for pulling strings into clean YML files.
657
+ Vagrant is now localizable as a side effect! Translations welcome.
658
+ - Fixed issue with "Waiting for cleanup" message appearing twice in
659
+ some cases. [GH-145]
660
+ - Converted CLI to use Thor. As a tradeoff, there are some backwards
661
+ incompatibilities:
662
+ * `vagrant package` - The `--include` flag now separates filenames
663
+ by spaces, instead of by commas. e.g. `vagrant package --include x y z`
664
+ * `vagrant ssh` - If you specify a command to execute using the `--execute`
665
+ flag, you may now only specify one command (before you were able to
666
+ specify an arbitrary amount). e.g. `vagrant ssh -e "echo hello"`
667
+ * `vagrant ssh-config` has become `vagrant ssh_config` due to a limitation
668
+ in Thor.
669
+
670
+ ## 0.5.4 (September 7, 2010)
671
+
672
+ - Fix issue with the "exec failed" by running on Tiger as well.
673
+ - Give an error when downloading a box which already exists prior
674
+ to actually downloading the box.
675
+
676
+ ## 0.5.3 (August 23, 2010)
677
+
678
+ - Add erubis as a dependency since its rendering of `erb` is sane.
679
+ - Fixed poorly formatted Vagrantfile after `vagrant init`. [GH-142]
680
+ - Fixed NFS not working properly with multiple NFS folders.
681
+ - Fixed chef solo provision to work on Windows. It was expanding a linux
682
+ path which prepended a drive letter onto it.
683
+
684
+ ## 0.5.2 (August 3, 2010)
685
+
686
+ - `vagrant up` can be used as a way to resume the VM as well (same as
687
+ `vagrant resume`). [GH-134]
688
+ - Sudo uses "-E" flag to preserve environment for chef provisioners.
689
+ This fixes issues with CentOS. [GH-133]
690
+ - Added "IdentitiesOnly yes" to options when `vagrant ssh` is run to
691
+ avoid "Too Many Authentication Failures" error. [GH-131]
692
+ - Fix regression with `package` not working. [GH-132]
693
+ - Added ability to specify box url in `init`, which populates the
694
+ Vagrantfile with the proper `config.vm.box_url`.
695
+
696
+ ## 0.5.1 (July 31, 2010)
697
+
698
+ - Allow specifying cookbook paths which exist only on the VM in `config.chef.cookbooks_path`.
699
+ This is used for specifying cookbook paths when `config.chef.recipe_url` is used. [GH-130]
700
+ See updated chef solo documentation for more information on this.
701
+ - No longer show "Disabling host only networks..." if no host only networks
702
+ are destroyed. Quiets `destroy`, `halt`, etc output a bit.
703
+ - Updated getting started guide to be more up to date and generic. [GH-125]
704
+ - Fixed error with doing a `vagrant up` when no Vagrantfile existed. [GH-128]
705
+ - Fixed NFS erroring when NFS wasn't even enabled if `/etc/exports` doesn't
706
+ exist. [GH-126]
707
+ - Fixed `vagrant resume` to properly resume a suspended VM. [GH-122]
708
+ - Fixed `halt`, `destroy`, `reload` to where they failed if the VM was
709
+ in a saved state. [GH-123]
710
+ - Added `config.chef.recipe_url` which allows you to specify a URL to
711
+ a gzipped tar file for chef solo to download cookbooks. See the
712
+ [chef-solo docs](http://wiki.opscode.com/display/chef/Chef+Solo#ChefSolo-RunningfromaURL) for more information.
713
+ [GH-121]
714
+ - Added `vagrant box repackage` which repackages boxes which have
715
+ been added. This is useful in case you want to redistribute a base
716
+ box you have but may have lost the actual "box" file. [GH-120]
717
+
718
+ ## Previous
719
+
720
+ The changelog began with version 0.5.1 so any changes prior to that
721
+ can be seen by checking the tagged releases and reading git commit
722
+ messages.
723
+