vagrant-lxc 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (423) hide show
  1. checksums.yaml +14 -6
  2. data/Gemfile +19 -14
  3. data/Gemfile.lock +10 -5
  4. data/README.md +18 -42
  5. data/development/Vagrantfile.1.0 +3 -2
  6. data/lib/vagrant-lxc/version.rb +1 -1
  7. data/lib/vagrant-lxc.rb +0 -2
  8. data/vagrant-lxc.gemspec +1 -14
  9. metadata +7 -540
  10. data/.gitmodules +0 -3
  11. data/bin/vagrant-lxc +0 -9
  12. data/lib/vendored_vagrant.rb +0 -9
  13. data/vendor/.gitkeep +0 -0
  14. data/vendor/vagrant/.gitignore +0 -31
  15. data/vendor/vagrant/.travis.yml +0 -7
  16. data/vendor/vagrant/.yardopts +0 -1
  17. data/vendor/vagrant/CHANGELOG.md +0 -803
  18. data/vendor/vagrant/Gemfile +0 -3
  19. data/vendor/vagrant/LICENSE +0 -21
  20. data/vendor/vagrant/README.md +0 -89
  21. data/vendor/vagrant/Rakefile +0 -18
  22. data/vendor/vagrant/bin/vagrant +0 -84
  23. data/vendor/vagrant/config/default.rb +0 -35
  24. data/vendor/vagrant/contrib/README.md +0 -12
  25. data/vendor/vagrant/contrib/bash/completion.sh +0 -3
  26. data/vendor/vagrant/contrib/emacs/vagrant.el +0 -8
  27. data/vendor/vagrant/contrib/vim/vagrantfile.vim +0 -9
  28. data/vendor/vagrant/keys/README.md +0 -17
  29. data/vendor/vagrant/keys/vagrant +0 -27
  30. data/vendor/vagrant/keys/vagrant.pub +0 -1
  31. data/vendor/vagrant/lib/vagrant/action/builder.rb +0 -154
  32. data/vendor/vagrant/lib/vagrant/action/builtin/box_add.rb +0 -79
  33. data/vendor/vagrant/lib/vagrant/action/builtin/call.rb +0 -67
  34. data/vendor/vagrant/lib/vagrant/action/builtin/config_validate.rb +0 -30
  35. data/vendor/vagrant/lib/vagrant/action/builtin/confirm.rb +0 -38
  36. data/vendor/vagrant/lib/vagrant/action/builtin/env_set.rb +0 -24
  37. data/vendor/vagrant/lib/vagrant/action/builtin/graceful_halt.rb +0 -73
  38. data/vendor/vagrant/lib/vagrant/action/builtin/handle_box_url.rb +0 -43
  39. data/vendor/vagrant/lib/vagrant/action/builtin/handle_forwarded_port_collisions.rb +0 -117
  40. data/vendor/vagrant/lib/vagrant/action/builtin/lock.rb +0 -57
  41. data/vendor/vagrant/lib/vagrant/action/builtin/nfs.rb +0 -117
  42. data/vendor/vagrant/lib/vagrant/action/builtin/provision.rb +0 -70
  43. data/vendor/vagrant/lib/vagrant/action/builtin/set_hostname.rb +0 -27
  44. data/vendor/vagrant/lib/vagrant/action/builtin/ssh_exec.rb +0 -42
  45. data/vendor/vagrant/lib/vagrant/action/builtin/ssh_run.rb +0 -43
  46. data/vendor/vagrant/lib/vagrant/action/general/package.rb +0 -102
  47. data/vendor/vagrant/lib/vagrant/action/hook.rb +0 -103
  48. data/vendor/vagrant/lib/vagrant/action/runner.rb +0 -69
  49. data/vendor/vagrant/lib/vagrant/action/warden.rb +0 -103
  50. data/vendor/vagrant/lib/vagrant/action.rb +0 -42
  51. data/vendor/vagrant/lib/vagrant/box.rb +0 -93
  52. data/vendor/vagrant/lib/vagrant/box_collection.rb +0 -315
  53. data/vendor/vagrant/lib/vagrant/cli.rb +0 -82
  54. data/vendor/vagrant/lib/vagrant/config/container.rb +0 -37
  55. data/vendor/vagrant/lib/vagrant/config/loader.rb +0 -222
  56. data/vendor/vagrant/lib/vagrant/config/v1/dummy_config.rb +0 -13
  57. data/vendor/vagrant/lib/vagrant/config/v1/loader.rb +0 -105
  58. data/vendor/vagrant/lib/vagrant/config/v1/root.rb +0 -60
  59. data/vendor/vagrant/lib/vagrant/config/v1.rb +0 -9
  60. data/vendor/vagrant/lib/vagrant/config/v2/dummy_config.rb +0 -13
  61. data/vendor/vagrant/lib/vagrant/config/v2/loader.rb +0 -141
  62. data/vendor/vagrant/lib/vagrant/config/v2/root.rb +0 -105
  63. data/vendor/vagrant/lib/vagrant/config/v2/util.rb +0 -21
  64. data/vendor/vagrant/lib/vagrant/config/v2.rb +0 -9
  65. data/vendor/vagrant/lib/vagrant/config/version_base.rb +0 -80
  66. data/vendor/vagrant/lib/vagrant/config.rb +0 -63
  67. data/vendor/vagrant/lib/vagrant/downloaders/base.rb +0 -22
  68. data/vendor/vagrant/lib/vagrant/downloaders/file.rb +0 -28
  69. data/vendor/vagrant/lib/vagrant/downloaders/http.rb +0 -116
  70. data/vendor/vagrant/lib/vagrant/downloaders.rb +0 -7
  71. data/vendor/vagrant/lib/vagrant/environment.rb +0 -729
  72. data/vendor/vagrant/lib/vagrant/errors.rb +0 -486
  73. data/vendor/vagrant/lib/vagrant/hosts.rb +0 -28
  74. data/vendor/vagrant/lib/vagrant/machine.rb +0 -325
  75. data/vendor/vagrant/lib/vagrant/machine_state.rb +0 -45
  76. data/vendor/vagrant/lib/vagrant/plugin/v1/command.rb +0 -169
  77. data/vendor/vagrant/lib/vagrant/plugin/v1/communicator.rb +0 -98
  78. data/vendor/vagrant/lib/vagrant/plugin/v1/config.rb +0 -112
  79. data/vendor/vagrant/lib/vagrant/plugin/v1/errors.rb +0 -15
  80. data/vendor/vagrant/lib/vagrant/plugin/v1/guest.rb +0 -92
  81. data/vendor/vagrant/lib/vagrant/plugin/v1/host.rb +0 -66
  82. data/vendor/vagrant/lib/vagrant/plugin/v1/manager.rb +0 -131
  83. data/vendor/vagrant/lib/vagrant/plugin/v1/plugin.rb +0 -229
  84. data/vendor/vagrant/lib/vagrant/plugin/v1/provider.rb +0 -68
  85. data/vendor/vagrant/lib/vagrant/plugin/v1/provisioner.rb +0 -50
  86. data/vendor/vagrant/lib/vagrant/plugin/v1.rb +0 -19
  87. data/vendor/vagrant/lib/vagrant/plugin/v2/command.rb +0 -234
  88. data/vendor/vagrant/lib/vagrant/plugin/v2/communicator.rb +0 -98
  89. data/vendor/vagrant/lib/vagrant/plugin/v2/components.rb +0 -29
  90. data/vendor/vagrant/lib/vagrant/plugin/v2/config.rb +0 -101
  91. data/vendor/vagrant/lib/vagrant/plugin/v2/errors.rb +0 -15
  92. data/vendor/vagrant/lib/vagrant/plugin/v2/guest.rb +0 -92
  93. data/vendor/vagrant/lib/vagrant/plugin/v2/host.rb +0 -66
  94. data/vendor/vagrant/lib/vagrant/plugin/v2/manager.rb +0 -158
  95. data/vendor/vagrant/lib/vagrant/plugin/v2/plugin.rb +0 -217
  96. data/vendor/vagrant/lib/vagrant/plugin/v2/provider.rb +0 -69
  97. data/vendor/vagrant/lib/vagrant/plugin/v2/provisioner.rb +0 -47
  98. data/vendor/vagrant/lib/vagrant/plugin/v2.rb +0 -22
  99. data/vendor/vagrant/lib/vagrant/plugin.rb +0 -6
  100. data/vendor/vagrant/lib/vagrant/registry.rb +0 -78
  101. data/vendor/vagrant/lib/vagrant/ssh.rb +0 -132
  102. data/vendor/vagrant/lib/vagrant/test_helpers.rb +0 -154
  103. data/vendor/vagrant/lib/vagrant/ui.rb +0 -170
  104. data/vendor/vagrant/lib/vagrant/util/ansi_escape_code_remover.rb +0 -34
  105. data/vendor/vagrant/lib/vagrant/util/busy.rb +0 -59
  106. data/vendor/vagrant/lib/vagrant/util/counter.rb +0 -24
  107. data/vendor/vagrant/lib/vagrant/util/file_checksum.rb +0 -38
  108. data/vendor/vagrant/lib/vagrant/util/file_mode.rb +0 -12
  109. data/vendor/vagrant/lib/vagrant/util/hash_with_indifferent_access.rb +0 -63
  110. data/vendor/vagrant/lib/vagrant/util/is_port_open.rb +0 -38
  111. data/vendor/vagrant/lib/vagrant/util/line_ending_helpers.rb +0 -14
  112. data/vendor/vagrant/lib/vagrant/util/network_ip.rb +0 -28
  113. data/vendor/vagrant/lib/vagrant/util/platform.rb +0 -68
  114. data/vendor/vagrant/lib/vagrant/util/retryable.rb +0 -31
  115. data/vendor/vagrant/lib/vagrant/util/safe_exec.rb +0 -36
  116. data/vendor/vagrant/lib/vagrant/util/safe_puts.rb +0 -31
  117. data/vendor/vagrant/lib/vagrant/util/scoped_hash_override.rb +0 -45
  118. data/vendor/vagrant/lib/vagrant/util/ssh.rb +0 -126
  119. data/vendor/vagrant/lib/vagrant/util/stacked_proc_runner.rb +0 -35
  120. data/vendor/vagrant/lib/vagrant/util/string_block_editor.rb +0 -75
  121. data/vendor/vagrant/lib/vagrant/util/subprocess.rb +0 -270
  122. data/vendor/vagrant/lib/vagrant/util/template_renderer.rb +0 -83
  123. data/vendor/vagrant/lib/vagrant/util/which.rb +0 -43
  124. data/vendor/vagrant/lib/vagrant/util.rb +0 -12
  125. data/vendor/vagrant/lib/vagrant/version.rb +0 -6
  126. data/vendor/vagrant/lib/vagrant.rb +0 -251
  127. data/vendor/vagrant/plugins/README.md +0 -5
  128. data/vendor/vagrant/plugins/commands/box/command/add.rb +0 -52
  129. data/vendor/vagrant/plugins/commands/box/command/list.rb +0 -41
  130. data/vendor/vagrant/plugins/commands/box/command/remove.rb +0 -37
  131. data/vendor/vagrant/plugins/commands/box/command/repackage.rb +0 -43
  132. data/vendor/vagrant/plugins/commands/box/command/root.rb +0 -75
  133. data/vendor/vagrant/plugins/commands/box/plugin.rb +0 -15
  134. data/vendor/vagrant/plugins/commands/destroy/command.rb +0 -31
  135. data/vendor/vagrant/plugins/commands/destroy/plugin.rb +0 -18
  136. data/vendor/vagrant/plugins/commands/halt/command.rb +0 -33
  137. data/vendor/vagrant/plugins/commands/halt/plugin.rb +0 -18
  138. data/vendor/vagrant/plugins/commands/init/command.rb +0 -40
  139. data/vendor/vagrant/plugins/commands/init/plugin.rb +0 -18
  140. data/vendor/vagrant/plugins/commands/package/command.rb +0 -78
  141. data/vendor/vagrant/plugins/commands/package/plugin.rb +0 -18
  142. data/vendor/vagrant/plugins/commands/plugin/action/bundler_check.rb +0 -25
  143. data/vendor/vagrant/plugins/commands/plugin/action/install_gem.rb +0 -70
  144. data/vendor/vagrant/plugins/commands/plugin/action/license_plugin.rb +0 -54
  145. data/vendor/vagrant/plugins/commands/plugin/action/list_plugins.rb +0 -54
  146. data/vendor/vagrant/plugins/commands/plugin/action/prune_gems.rb +0 -149
  147. data/vendor/vagrant/plugins/commands/plugin/action/uninstall_plugin.rb +0 -23
  148. data/vendor/vagrant/plugins/commands/plugin/action.rb +0 -52
  149. data/vendor/vagrant/plugins/commands/plugin/command/base.rb +0 -22
  150. data/vendor/vagrant/plugins/commands/plugin/command/install.rb +0 -39
  151. data/vendor/vagrant/plugins/commands/plugin/command/license.rb +0 -31
  152. data/vendor/vagrant/plugins/commands/plugin/command/list.rb +0 -28
  153. data/vendor/vagrant/plugins/commands/plugin/command/root.rb +0 -75
  154. data/vendor/vagrant/plugins/commands/plugin/command/uninstall.rb +0 -28
  155. data/vendor/vagrant/plugins/commands/plugin/gem_helper.rb +0 -74
  156. data/vendor/vagrant/plugins/commands/plugin/plugin.rb +0 -22
  157. data/vendor/vagrant/plugins/commands/plugin/state_file.rb +0 -57
  158. data/vendor/vagrant/plugins/commands/provision/command.rb +0 -34
  159. data/vendor/vagrant/plugins/commands/provision/plugin.rb +0 -18
  160. data/vendor/vagrant/plugins/commands/reload/command.rb +0 -37
  161. data/vendor/vagrant/plugins/commands/reload/plugin.rb +0 -18
  162. data/vendor/vagrant/plugins/commands/resume/command.rb +0 -25
  163. data/vendor/vagrant/plugins/commands/resume/plugin.rb +0 -17
  164. data/vendor/vagrant/plugins/commands/ssh/command.rb +0 -66
  165. data/vendor/vagrant/plugins/commands/ssh/plugin.rb +0 -17
  166. data/vendor/vagrant/plugins/commands/ssh_config/command.rb +0 -49
  167. data/vendor/vagrant/plugins/commands/ssh_config/plugin.rb +0 -18
  168. data/vendor/vagrant/plugins/commands/status/command.rb +0 -39
  169. data/vendor/vagrant/plugins/commands/status/plugin.rb +0 -18
  170. data/vendor/vagrant/plugins/commands/suspend/command.rb +0 -25
  171. data/vendor/vagrant/plugins/commands/suspend/plugin.rb +0 -18
  172. data/vendor/vagrant/plugins/commands/up/command.rb +0 -45
  173. data/vendor/vagrant/plugins/commands/up/plugin.rb +0 -17
  174. data/vendor/vagrant/plugins/commands/up/start_mixins.rb +0 -26
  175. data/vendor/vagrant/plugins/communicators/ssh/communicator.rb +0 -317
  176. data/vendor/vagrant/plugins/communicators/ssh/plugin.rb +0 -19
  177. data/vendor/vagrant/plugins/guests/arch/guest.rb +0 -41
  178. data/vendor/vagrant/plugins/guests/arch/plugin.rb +0 -15
  179. data/vendor/vagrant/plugins/guests/debian/guest.rb +0 -72
  180. data/vendor/vagrant/plugins/guests/debian/plugin.rb +0 -15
  181. data/vendor/vagrant/plugins/guests/fedora/guest.rb +0 -71
  182. data/vendor/vagrant/plugins/guests/fedora/plugin.rb +0 -15
  183. data/vendor/vagrant/plugins/guests/freebsd/config.rb +0 -13
  184. data/vendor/vagrant/plugins/guests/freebsd/guest.rb +0 -70
  185. data/vendor/vagrant/plugins/guests/freebsd/plugin.rb +0 -20
  186. data/vendor/vagrant/plugins/guests/gentoo/guest.rb +0 -51
  187. data/vendor/vagrant/plugins/guests/gentoo/plugin.rb +0 -15
  188. data/vendor/vagrant/plugins/guests/linux/config.rb +0 -13
  189. data/vendor/vagrant/plugins/guests/linux/guest.rb +0 -118
  190. data/vendor/vagrant/plugins/guests/linux/plugin.rb +0 -20
  191. data/vendor/vagrant/plugins/guests/openbsd/guest.rb +0 -13
  192. data/vendor/vagrant/plugins/guests/openbsd/plugin.rb +0 -15
  193. data/vendor/vagrant/plugins/guests/redhat/guest.rb +0 -74
  194. data/vendor/vagrant/plugins/guests/redhat/plugin.rb +0 -15
  195. data/vendor/vagrant/plugins/guests/solaris/config.rb +0 -18
  196. data/vendor/vagrant/plugins/guests/solaris/guest.rb +0 -73
  197. data/vendor/vagrant/plugins/guests/solaris/plugin.rb +0 -20
  198. data/vendor/vagrant/plugins/guests/suse/guest.rb +0 -24
  199. data/vendor/vagrant/plugins/guests/suse/plugin.rb +0 -15
  200. data/vendor/vagrant/plugins/guests/ubuntu/guest.rb +0 -44
  201. data/vendor/vagrant/plugins/guests/ubuntu/plugin.rb +0 -15
  202. data/vendor/vagrant/plugins/hosts/arch/host.rb +0 -68
  203. data/vendor/vagrant/plugins/hosts/arch/plugin.rb +0 -15
  204. data/vendor/vagrant/plugins/hosts/bsd/host.rb +0 -102
  205. data/vendor/vagrant/plugins/hosts/bsd/plugin.rb +0 -15
  206. data/vendor/vagrant/plugins/hosts/fedora/host.rb +0 -51
  207. data/vendor/vagrant/plugins/hosts/fedora/plugin.rb +0 -15
  208. data/vendor/vagrant/plugins/hosts/freebsd/host.rb +0 -43
  209. data/vendor/vagrant/plugins/hosts/freebsd/plugin.rb +0 -15
  210. data/vendor/vagrant/plugins/hosts/gentoo/host.rb +0 -24
  211. data/vendor/vagrant/plugins/hosts/gentoo/plugin.rb +0 -15
  212. data/vendor/vagrant/plugins/hosts/linux/host.rb +0 -95
  213. data/vendor/vagrant/plugins/hosts/linux/plugin.rb +0 -15
  214. data/vendor/vagrant/plugins/hosts/opensuse/host.rb +0 -34
  215. data/vendor/vagrant/plugins/hosts/opensuse/plugin.rb +0 -15
  216. data/vendor/vagrant/plugins/hosts/windows/host.rb +0 -17
  217. data/vendor/vagrant/plugins/hosts/windows/plugin.rb +0 -15
  218. data/vendor/vagrant/plugins/kernel_v1/config/nfs.rb +0 -20
  219. data/vendor/vagrant/plugins/kernel_v1/config/package.rb +0 -17
  220. data/vendor/vagrant/plugins/kernel_v1/config/ssh.rb +0 -46
  221. data/vendor/vagrant/plugins/kernel_v1/config/vagrant.rb +0 -31
  222. data/vendor/vagrant/plugins/kernel_v1/config/vm.rb +0 -184
  223. data/vendor/vagrant/plugins/kernel_v1/plugin.rb +0 -44
  224. data/vendor/vagrant/plugins/kernel_v2/config/nfs.rb +0 -10
  225. data/vendor/vagrant/plugins/kernel_v2/config/package.rb +0 -9
  226. data/vendor/vagrant/plugins/kernel_v2/config/ssh.rb +0 -35
  227. data/vendor/vagrant/plugins/kernel_v2/config/vagrant.rb +0 -9
  228. data/vendor/vagrant/plugins/kernel_v2/config/vm.rb +0 -314
  229. data/vendor/vagrant/plugins/kernel_v2/config/vm_provisioner.rb +0 -40
  230. data/vendor/vagrant/plugins/kernel_v2/config/vm_subvm.rb +0 -30
  231. data/vendor/vagrant/plugins/kernel_v2/plugin.rb +0 -44
  232. data/vendor/vagrant/plugins/providers/virtualbox/action/boot.rb +0 -49
  233. data/vendor/vagrant/plugins/providers/virtualbox/action/check_accessible.rb +0 -23
  234. data/vendor/vagrant/plugins/providers/virtualbox/action/check_created.rb +0 -21
  235. data/vendor/vagrant/plugins/providers/virtualbox/action/check_guest_additions.rb +0 -45
  236. data/vendor/vagrant/plugins/providers/virtualbox/action/check_running.rb +0 -21
  237. data/vendor/vagrant/plugins/providers/virtualbox/action/check_virtualbox.rb +0 -22
  238. data/vendor/vagrant/plugins/providers/virtualbox/action/clean_machine_folder.rb +0 -43
  239. data/vendor/vagrant/plugins/providers/virtualbox/action/clear_forwarded_ports.rb +0 -18
  240. data/vendor/vagrant/plugins/providers/virtualbox/action/clear_network_interfaces.rb +0 -31
  241. data/vendor/vagrant/plugins/providers/virtualbox/action/clear_shared_folders.rb +0 -17
  242. data/vendor/vagrant/plugins/providers/virtualbox/action/created.rb +0 -20
  243. data/vendor/vagrant/plugins/providers/virtualbox/action/customize.rb +0 -36
  244. data/vendor/vagrant/plugins/providers/virtualbox/action/destroy.rb +0 -19
  245. data/vendor/vagrant/plugins/providers/virtualbox/action/destroy_confirm.rb +0 -17
  246. data/vendor/vagrant/plugins/providers/virtualbox/action/destroy_unused_network_interfaces.rb +0 -16
  247. data/vendor/vagrant/plugins/providers/virtualbox/action/discard_state.rb +0 -20
  248. data/vendor/vagrant/plugins/providers/virtualbox/action/export.rb +0 -57
  249. data/vendor/vagrant/plugins/providers/virtualbox/action/forced_halt.rb +0 -25
  250. data/vendor/vagrant/plugins/providers/virtualbox/action/forward_ports.rb +0 -79
  251. data/vendor/vagrant/plugins/providers/virtualbox/action/import.rb +0 -51
  252. data/vendor/vagrant/plugins/providers/virtualbox/action/is_paused.rb +0 -20
  253. data/vendor/vagrant/plugins/providers/virtualbox/action/is_running.rb +0 -20
  254. data/vendor/vagrant/plugins/providers/virtualbox/action/is_saved.rb +0 -20
  255. data/vendor/vagrant/plugins/providers/virtualbox/action/match_mac_address.rb +0 -21
  256. data/vendor/vagrant/plugins/providers/virtualbox/action/message_not_created.rb +0 -16
  257. data/vendor/vagrant/plugins/providers/virtualbox/action/message_not_running.rb +0 -16
  258. data/vendor/vagrant/plugins/providers/virtualbox/action/message_will_not_destroy.rb +0 -17
  259. data/vendor/vagrant/plugins/providers/virtualbox/action/network.rb +0 -366
  260. data/vendor/vagrant/plugins/providers/virtualbox/action/package.rb +0 -20
  261. data/vendor/vagrant/plugins/providers/virtualbox/action/package_vagrantfile.rb +0 -33
  262. data/vendor/vagrant/plugins/providers/virtualbox/action/prepare_forwarded_port_collision_params.rb +0 -35
  263. data/vendor/vagrant/plugins/providers/virtualbox/action/prepare_nfs_settings.rb +0 -51
  264. data/vendor/vagrant/plugins/providers/virtualbox/action/prune_nfs_exports.rb +0 -20
  265. data/vendor/vagrant/plugins/providers/virtualbox/action/resume.rb +0 -25
  266. data/vendor/vagrant/plugins/providers/virtualbox/action/sane_defaults.rb +0 -87
  267. data/vendor/vagrant/plugins/providers/virtualbox/action/set_name.rb +0 -40
  268. data/vendor/vagrant/plugins/providers/virtualbox/action/setup_package_files.rb +0 -51
  269. data/vendor/vagrant/plugins/providers/virtualbox/action/share_folders.rb +0 -113
  270. data/vendor/vagrant/plugins/providers/virtualbox/action/suspend.rb +0 -20
  271. data/vendor/vagrant/plugins/providers/virtualbox/action.rb +0 -308
  272. data/vendor/vagrant/plugins/providers/virtualbox/config.rb +0 -82
  273. data/vendor/vagrant/plugins/providers/virtualbox/driver/base.rb +0 -344
  274. data/vendor/vagrant/plugins/providers/virtualbox/driver/meta.rb +0 -141
  275. data/vendor/vagrant/plugins/providers/virtualbox/driver/version_4_0.rb +0 -481
  276. data/vendor/vagrant/plugins/providers/virtualbox/driver/version_4_1.rb +0 -481
  277. data/vendor/vagrant/plugins/providers/virtualbox/driver/version_4_2.rb +0 -471
  278. data/vendor/vagrant/plugins/providers/virtualbox/model/forwarded_port.rb +0 -58
  279. data/vendor/vagrant/plugins/providers/virtualbox/plugin.rb +0 -42
  280. data/vendor/vagrant/plugins/providers/virtualbox/provider.rb +0 -92
  281. data/vendor/vagrant/plugins/providers/virtualbox/util/compile_forwarded_ports.rb +0 -31
  282. data/vendor/vagrant/plugins/provisioners/chef/config/base.rb +0 -65
  283. data/vendor/vagrant/plugins/provisioners/chef/config/chef_client.rb +0 -39
  284. data/vendor/vagrant/plugins/provisioners/chef/config/chef_solo.rb +0 -87
  285. data/vendor/vagrant/plugins/provisioners/chef/plugin.rb +0 -33
  286. data/vendor/vagrant/plugins/provisioners/chef/provisioner/base.rb +0 -91
  287. data/vendor/vagrant/plugins/provisioners/chef/provisioner/chef_client.rb +0 -103
  288. data/vendor/vagrant/plugins/provisioners/chef/provisioner/chef_solo.rb +0 -182
  289. data/vendor/vagrant/plugins/provisioners/puppet/config/puppet.rb +0 -70
  290. data/vendor/vagrant/plugins/provisioners/puppet/config/puppet_server.rb +0 -16
  291. data/vendor/vagrant/plugins/provisioners/puppet/plugin.rb +0 -33
  292. data/vendor/vagrant/plugins/provisioners/puppet/provisioner/puppet.rb +0 -110
  293. data/vendor/vagrant/plugins/provisioners/puppet/provisioner/puppet_server.rb +0 -67
  294. data/vendor/vagrant/plugins/provisioners/shell/config.rb +0 -46
  295. data/vendor/vagrant/plugins/provisioners/shell/plugin.rb +0 -23
  296. data/vendor/vagrant/plugins/provisioners/shell/provisioner.rb +0 -66
  297. data/vendor/vagrant/tasks/acceptance.rake +0 -113
  298. data/vendor/vagrant/tasks/bundler.rake +0 -3
  299. data/vendor/vagrant/tasks/test.rake +0 -20
  300. data/vendor/vagrant/templates/commands/init/Vagrantfile.erb +0 -111
  301. data/vendor/vagrant/templates/commands/ssh_config/config.erb +0 -16
  302. data/vendor/vagrant/templates/config/messages.erb +0 -14
  303. data/vendor/vagrant/templates/config/validation_failed.erb +0 -7
  304. data/vendor/vagrant/templates/guests/arch/network_dhcp.erb +0 -4
  305. data/vendor/vagrant/templates/guests/arch/network_static.erb +0 -6
  306. data/vendor/vagrant/templates/guests/debian/network_dhcp.erb +0 -11
  307. data/vendor/vagrant/templates/guests/debian/network_static.erb +0 -7
  308. data/vendor/vagrant/templates/guests/fedora/network_dhcp.erb +0 -6
  309. data/vendor/vagrant/templates/guests/fedora/network_static.erb +0 -13
  310. data/vendor/vagrant/templates/guests/freebsd/network_dhcp.erb +0 -3
  311. data/vendor/vagrant/templates/guests/freebsd/network_static.erb +0 -3
  312. data/vendor/vagrant/templates/guests/gentoo/network_dhcp.erb +0 -4
  313. data/vendor/vagrant/templates/guests/gentoo/network_static.erb +0 -4
  314. data/vendor/vagrant/templates/guests/redhat/network_dhcp.erb +0 -6
  315. data/vendor/vagrant/templates/guests/redhat/network_static.erb +0 -7
  316. data/vendor/vagrant/templates/locales/en.yml +0 -993
  317. data/vendor/vagrant/templates/nfs/exports.erb +0 -5
  318. data/vendor/vagrant/templates/nfs/exports_freebsd.erb +0 -5
  319. data/vendor/vagrant/templates/nfs/exports_linux.erb +0 -5
  320. data/vendor/vagrant/templates/package_Vagrantfile.erb +0 -11
  321. data/vendor/vagrant/templates/provisioners/chef_client/client.erb +0 -32
  322. data/vendor/vagrant/templates/provisioners/chef_solo/solo.erb +0 -25
  323. data/vendor/vagrant/templates/rgloader.rb +0 -9
  324. data/vendor/vagrant/test/acceptance/base.rb +0 -48
  325. data/vendor/vagrant/test/acceptance/box_test.rb +0 -99
  326. data/vendor/vagrant/test/acceptance/destroy_test.rb +0 -37
  327. data/vendor/vagrant/test/acceptance/halt_test.rb +0 -72
  328. data/vendor/vagrant/test/acceptance/init_test.rb +0 -33
  329. data/vendor/vagrant/test/acceptance/networking/host_only_test.rb +0 -37
  330. data/vendor/vagrant/test/acceptance/networking/port_forward_test.rb +0 -125
  331. data/vendor/vagrant/test/acceptance/package_test.rb +0 -46
  332. data/vendor/vagrant/test/acceptance/provisioning/basic_test.rb +0 -61
  333. data/vendor/vagrant/test/acceptance/provisioning/chef_solo_test.rb +0 -37
  334. data/vendor/vagrant/test/acceptance/provisioning/shell_test.rb +0 -53
  335. data/vendor/vagrant/test/acceptance/resume_test.rb +0 -17
  336. data/vendor/vagrant/test/acceptance/shared_folders_test.rb +0 -84
  337. data/vendor/vagrant/test/acceptance/skeletons/chef_solo_basic/README.md +0 -3
  338. data/vendor/vagrant/test/acceptance/skeletons/chef_solo_basic/cookbooks/basic/recipes/default.rb +0 -5
  339. data/vendor/vagrant/test/acceptance/skeletons/chef_solo_json/README.md +0 -3
  340. data/vendor/vagrant/test/acceptance/skeletons/chef_solo_json/cookbooks/basic/recipes/default.rb +0 -6
  341. data/vendor/vagrant/test/acceptance/skeletons/provisioner_multi/README.md +0 -3
  342. data/vendor/vagrant/test/acceptance/skeletons/provisioner_multi/cookbooks/basic/recipes/default.rb +0 -5
  343. data/vendor/vagrant/test/acceptance/ssh_test.rb +0 -46
  344. data/vendor/vagrant/test/acceptance/support/config.rb +0 -42
  345. data/vendor/vagrant/test/acceptance/support/isolated_environment.rb +0 -118
  346. data/vendor/vagrant/test/acceptance/support/matchers/have_color.rb +0 -9
  347. data/vendor/vagrant/test/acceptance/support/matchers/match_output.rb +0 -14
  348. data/vendor/vagrant/test/acceptance/support/matchers/succeed.rb +0 -14
  349. data/vendor/vagrant/test/acceptance/support/network_tests.rb +0 -29
  350. data/vendor/vagrant/test/acceptance/support/output.rb +0 -95
  351. data/vendor/vagrant/test/acceptance/support/shared/base_context.rb +0 -72
  352. data/vendor/vagrant/test/acceptance/support/shared/command_examples.rb +0 -33
  353. data/vendor/vagrant/test/acceptance/support/virtualbox.rb +0 -36
  354. data/vendor/vagrant/test/acceptance/suspend_test.rb +0 -56
  355. data/vendor/vagrant/test/acceptance/up_basic_test.rb +0 -33
  356. data/vendor/vagrant/test/acceptance/up_with_box_url.rb +0 -40
  357. data/vendor/vagrant/test/acceptance/vagrant_test.rb +0 -47
  358. data/vendor/vagrant/test/acceptance/version_test.rb +0 -15
  359. data/vendor/vagrant/test/config/acceptance_boxes.yml +0 -7
  360. data/vendor/vagrant/test/support/isolated_environment.rb +0 -46
  361. data/vendor/vagrant/test/support/tempdir.rb +0 -43
  362. data/vendor/vagrant/test/unit/base.rb +0 -27
  363. data/vendor/vagrant/test/unit/support/dummy_provider.rb +0 -16
  364. data/vendor/vagrant/test/unit/support/isolated_environment.rb +0 -177
  365. data/vendor/vagrant/test/unit/support/shared/base_context.rb +0 -104
  366. data/vendor/vagrant/test/unit/vagrant/action/builder_test.rb +0 -196
  367. data/vendor/vagrant/test/unit/vagrant/action/builtin/call_test.rb +0 -145
  368. data/vendor/vagrant/test/unit/vagrant/action/builtin/confirm_test.rb +0 -36
  369. data/vendor/vagrant/test/unit/vagrant/action/builtin/env_set_test.rb +0 -20
  370. data/vendor/vagrant/test/unit/vagrant/action/builtin/graceful_halt_test.rb +0 -61
  371. data/vendor/vagrant/test/unit/vagrant/action/builtin/lock_test.rb +0 -98
  372. data/vendor/vagrant/test/unit/vagrant/action/builtin/ssh_exec_test.rb +0 -57
  373. data/vendor/vagrant/test/unit/vagrant/action/hook_test.rb +0 -101
  374. data/vendor/vagrant/test/unit/vagrant/action/runner_test.rb +0 -71
  375. data/vendor/vagrant/test/unit/vagrant/action/warden_test.rb +0 -92
  376. data/vendor/vagrant/test/unit/vagrant/box_collection_test.rb +0 -224
  377. data/vendor/vagrant/test/unit/vagrant/box_test.rb +0 -109
  378. data/vendor/vagrant/test/unit/vagrant/cli_test.rb +0 -27
  379. data/vendor/vagrant/test/unit/vagrant/config/loader_test.rb +0 -184
  380. data/vendor/vagrant/test/unit/vagrant/config/v1/dummy_config_test.rb +0 -24
  381. data/vendor/vagrant/test/unit/vagrant/config/v1/loader_test.rb +0 -145
  382. data/vendor/vagrant/test/unit/vagrant/config/v1/root_test.rb +0 -40
  383. data/vendor/vagrant/test/unit/vagrant/config/v2/dummy_config_test.rb +0 -24
  384. data/vendor/vagrant/test/unit/vagrant/config/v2/loader_test.rb +0 -151
  385. data/vendor/vagrant/test/unit/vagrant/config/v2/root_test.rb +0 -97
  386. data/vendor/vagrant/test/unit/vagrant/config/v2/util_test.rb +0 -21
  387. data/vendor/vagrant/test/unit/vagrant/config_test.rb +0 -66
  388. data/vendor/vagrant/test/unit/vagrant/downloaders/base_test.rb +0 -14
  389. data/vendor/vagrant/test/unit/vagrant/downloaders/file_test.rb +0 -87
  390. data/vendor/vagrant/test/unit/vagrant/downloaders/http_test.rb +0 -23
  391. data/vendor/vagrant/test/unit/vagrant/environment_test.rb +0 -571
  392. data/vendor/vagrant/test/unit/vagrant/hosts_test.rb +0 -37
  393. data/vendor/vagrant/test/unit/vagrant/machine_state_test.rb +0 -26
  394. data/vendor/vagrant/test/unit/vagrant/machine_test.rb +0 -418
  395. data/vendor/vagrant/test/unit/vagrant/plugin/v1/command_test.rb +0 -143
  396. data/vendor/vagrant/test/unit/vagrant/plugin/v1/communicator_test.rb +0 -9
  397. data/vendor/vagrant/test/unit/vagrant/plugin/v1/config_test.rb +0 -50
  398. data/vendor/vagrant/test/unit/vagrant/plugin/v1/host_test.rb +0 -5
  399. data/vendor/vagrant/test/unit/vagrant/plugin/v1/manager_test.rb +0 -114
  400. data/vendor/vagrant/test/unit/vagrant/plugin/v1/plugin_test.rb +0 -267
  401. data/vendor/vagrant/test/unit/vagrant/plugin/v1/provider_test.rb +0 -18
  402. data/vendor/vagrant/test/unit/vagrant/plugin/v2/command_test.rb +0 -238
  403. data/vendor/vagrant/test/unit/vagrant/plugin/v2/communicator_test.rb +0 -9
  404. data/vendor/vagrant/test/unit/vagrant/plugin/v2/components_test.rb +0 -17
  405. data/vendor/vagrant/test/unit/vagrant/plugin/v2/config_test.rb +0 -60
  406. data/vendor/vagrant/test/unit/vagrant/plugin/v2/host_test.rb +0 -5
  407. data/vendor/vagrant/test/unit/vagrant/plugin/v2/manager_test.rb +0 -157
  408. data/vendor/vagrant/test/unit/vagrant/plugin/v2/plugin_test.rb +0 -287
  409. data/vendor/vagrant/test/unit/vagrant/plugin/v2/provider_test.rb +0 -18
  410. data/vendor/vagrant/test/unit/vagrant/registry_test.rb +0 -128
  411. data/vendor/vagrant/test/unit/vagrant/util/ansi_escape_code_remover_test.rb +0 -16
  412. data/vendor/vagrant/test/unit/vagrant/util/file_checksum_test.rb +0 -23
  413. data/vendor/vagrant/test/unit/vagrant/util/hash_with_indifferent_access_test.rb +0 -38
  414. data/vendor/vagrant/test/unit/vagrant/util/is_port_open_test.rb +0 -53
  415. data/vendor/vagrant/test/unit/vagrant/util/line_endings_helper_test.rb +0 -16
  416. data/vendor/vagrant/test/unit/vagrant/util/network_ip_test.rb +0 -17
  417. data/vendor/vagrant/test/unit/vagrant/util/retryable_test.rb +0 -106
  418. data/vendor/vagrant/test/unit/vagrant/util/scoped_hash_override_test.rb +0 -48
  419. data/vendor/vagrant/test/unit/vagrant/util/ssh_test.rb +0 -30
  420. data/vendor/vagrant/test/unit/vagrant/util/string_block_editor_test.rb +0 -98
  421. data/vendor/vagrant/test/unit/vagrant/util/which_test.rb +0 -43
  422. data/vendor/vagrant/test/unit/vagrant_test.rb +0 -56
  423. data/vendor/vagrant/vagrant.gemspec +0 -69
@@ -1,47 +0,0 @@
1
- require File.expand_path("../base", __FILE__)
2
- require "acceptance/support/matchers/have_color"
3
-
4
- describe "vagrant and color output" do
5
- include_context "acceptance"
6
-
7
- # This is a check to see if the `expect` program is installed on this
8
- # computer. Some tests require this and if this doesn't exist then the
9
- # test itself will be skipped.
10
- def self.has_expect?
11
- `which expect`
12
- $?.success?
13
- end
14
-
15
- it "outputs color if there is a TTY", :if => has_expect? do
16
- environment.workdir.join("color.exp").open("w+") do |f|
17
- f.puts(<<-SCRIPT)
18
- spawn #{environment.replace_command("vagrant")} status
19
- expect default {}
20
- SCRIPT
21
- end
22
-
23
- result = execute("expect", "color.exp")
24
- result.stdout.should have_color
25
- end
26
-
27
- it "doesn't output color if there is a TTY but --no-color is present", :if => has_expect? do
28
- environment.workdir.join("color.exp").open("w+") do |f|
29
- f.puts(<<-SCRIPT)
30
- spawn #{environment.replace_command("vagrant")} status --no-color
31
- expect default {}
32
- SCRIPT
33
- end
34
-
35
- result = execute("expect", "color.exp")
36
- result.stdout.should_not have_color
37
- end
38
-
39
- it "doesn't output color in the absense of a TTY" do
40
- # This should always output an error, which on a TTY would
41
- # output color. We check that this doesn't output color.
42
- # If `vagrant status` itself is broken, another acceptance test
43
- # should catch that. We just assume it works here.
44
- result = execute("vagrant", "status")
45
- result.stdout.should_not have_color
46
- end
47
- end
@@ -1,15 +0,0 @@
1
- require File.expand_path("../base", __FILE__)
2
-
3
- describe "vagrant version" do
4
- include_context "acceptance"
5
-
6
- it "prints the version when called with '-v'" do
7
- result = execute("vagrant", "-v")
8
- result.stdout.should match_output(:version, config.vagrant_version)
9
- end
10
-
11
- it "prints the version when called with '--version'" do
12
- result = execute("vagrant", "--version")
13
- result.stdout.should match_output(:version, config.vagrant_version)
14
- end
15
- end
@@ -1,7 +0,0 @@
1
- # This is the list of required boxes for acceptance tests, and
2
- # their locations. The locations are used to download the boxes
3
- # on the fly, if necessary. Additionally, a SHA1 checksum is
4
- # given to determine if the box needs to be updated.
5
- - name: default
6
- url: http://files.vagrantup.com/test/boxes/default.box
7
- checksum: 1b0a7eb6e152c5b43f45485654ff4965a7f9f604
@@ -1,46 +0,0 @@
1
- require "fileutils"
2
- require "pathname"
3
-
4
- require "log4r"
5
-
6
- require "support/tempdir"
7
-
8
- # This class manages an isolated environment for Vagrant to
9
- # run in. It creates a temporary directory to act as the
10
- # working directory as well as sets a custom home directory.
11
- #
12
- # This class also provides various helpers to create Vagrantfiles,
13
- # boxes, etc.
14
- class IsolatedEnvironment
15
- attr_reader :homedir
16
- attr_reader :workdir
17
-
18
- # Initializes an isolated environment. You can pass in some
19
- # options here to configure runing custom applications in place
20
- # of others as well as specifying environmental variables.
21
- #
22
- # @param [Hash] apps A mapping of application name (such as "vagrant")
23
- # to an alternate full path to the binary to run.
24
- # @param [Hash] env Additional environmental variables to inject
25
- # into the execution environments.
26
- def initialize
27
- @logger = Log4r::Logger.new("test::isolated_environment")
28
-
29
- # Create a temporary directory for our work
30
- @tempdir = Tempdir.new("vagrant")
31
- @logger.info("Initialize isolated environment: #{@tempdir.path}")
32
-
33
- # Setup the home and working directories
34
- @homedir = Pathname.new(File.join(@tempdir.path, "home"))
35
- @workdir = Pathname.new(File.join(@tempdir.path, "work"))
36
-
37
- @homedir.mkdir
38
- @workdir.mkdir
39
- end
40
-
41
- # This closes the environment by cleaning it up.
42
- def close
43
- @logger.info("Removing isolated environment: #{@tempdir.path}")
44
- FileUtils.rm_rf(@tempdir.path)
45
- end
46
- end
@@ -1,43 +0,0 @@
1
- require 'fileutils'
2
- require 'tempfile'
3
-
4
- # This class provides an easy way of creating a temporary
5
- # directory and having it removed when the application exits.
6
- class Tempdir
7
- attr_reader :path
8
-
9
- def initialize(basename="vagrant")
10
- @path = nil
11
-
12
- # Loop and attempt to create a temporary directory until
13
- # it succeeds.
14
- while @path.nil?
15
- file = Tempfile.new(basename)
16
- @path = file.path
17
- file.unlink
18
-
19
- begin
20
- Dir.mkdir(@path)
21
- rescue
22
- @path = nil
23
- end
24
- end
25
-
26
- # Setup a finalizer to delete the directory. This is the same way
27
- # that Tempfile and friends do this...
28
- @cleanup_proc = lambda do
29
- FileUtils.rm_rf(@path) if File.directory?(@path)
30
- end
31
-
32
- ObjectSpace.define_finalizer(self, @cleanup_proc)
33
- end
34
-
35
- # This deletes the temporary directory.
36
- def unlink
37
- # Delete the directory
38
- @cleanup_proc.call
39
-
40
- # Undefine the finalizer since we're all cleaned up
41
- ObjectSpace.undefine_finalizer(self)
42
- end
43
- end
@@ -1,27 +0,0 @@
1
- require "rubygems"
2
- require "rspec/autorun"
3
-
4
- # Require Vagrant itself so we can reference the proper
5
- # classes to test.
6
- require "vagrant"
7
-
8
- # Add the test directory to the load path
9
- $:.unshift File.expand_path("../../", __FILE__)
10
-
11
- # Load in helpers
12
- require "support/tempdir"
13
- require "unit/support/dummy_provider"
14
- require "unit/support/shared/base_context"
15
-
16
- # Do not buffer output
17
- $stdout.sync = true
18
- $stderr.sync = true
19
-
20
- # Configure RSpec
21
- RSpec.configure do |c|
22
- c.expect_with :rspec, :stdlib
23
- end
24
-
25
- # Configure VAGRANT_CWD so that the tests never find an actual
26
- # Vagrantfile anywhere, or at least this minimizes those chances.
27
- ENV["VAGRANT_CWD"] = Tempdir.new.path
@@ -1,16 +0,0 @@
1
- module VagrantTests
2
- class DummyProviderPlugin < Vagrant.plugin("2")
3
- name "Dummy Provider"
4
- description <<-EOF
5
- This creates a provider named "dummy" which does nothing, so that
6
- the unit tests aren't reliant on VirtualBox (or any other real
7
- provider for that matter).
8
- EOF
9
-
10
- provider(:dummy) { DummyProvider }
11
- end
12
-
13
- class DummyProvider < Vagrant.plugin("2", :provider)
14
- # No-op
15
- end
16
- end
@@ -1,177 +0,0 @@
1
- require "fileutils"
2
- require "pathname"
3
- require "tempfile"
4
-
5
- require "json"
6
- require "log4r"
7
-
8
- require "vagrant/util/platform"
9
- require "vagrant/util/subprocess"
10
-
11
- require "support/isolated_environment"
12
- require "support/tempdir"
13
-
14
- module Unit
15
- class IsolatedEnvironment < ::IsolatedEnvironment
16
- def create_vagrant_env(options=nil)
17
- options = {
18
- :cwd => @workdir,
19
- :home_path => @homedir
20
- }.merge(options || {})
21
-
22
- Vagrant::Environment.new(options)
23
- end
24
-
25
- # This creates a file in the isolated environment. By default this file
26
- # will be created in the working directory of the isolated environment.
27
- def file(name, contents)
28
- @workdir.join(name).open("w+") do |f|
29
- f.write(contents)
30
- end
31
- end
32
-
33
- def vagrantfile(contents, root=nil)
34
- root ||= @workdir
35
- root.join("Vagrantfile").open("w+") do |f|
36
- f.write(contents)
37
- end
38
- end
39
-
40
- def box(name, vagrantfile_contents="")
41
- # Create the box directory
42
- box_dir = boxes_dir.join(name)
43
- box_dir.mkpath
44
-
45
- # Create the "box.ovf" file because that is how Vagrant heuristically
46
- # determines a box is a V1 box.
47
- box_dir.join("box.ovf").open("w") { |f| f.write("") }
48
-
49
- # Populate the vagrantfile
50
- vagrantfile(vagrantfile_contents, box_dir)
51
-
52
- # Return the directory
53
- box_dir
54
- end
55
-
56
- # Create an alias because "box" makes a V1 box, so "box1"
57
- alias :box1 :box
58
-
59
- # Creates a fake box to exist in this environment.
60
- #
61
- # @param [String] name Name of the box
62
- # @param [Symbol] provider Provider the box was built for.
63
- # @return [Pathname] Path to the box directory.
64
- def box2(name, provider, options=nil)
65
- # Default options
66
- options = {
67
- :vagrantfile => ""
68
- }.merge(options || {})
69
-
70
- # Make the box directory
71
- box_dir = boxes_dir.join(name, provider.to_s)
72
- box_dir.mkpath
73
-
74
- # Create a metadata.json file
75
- box_metadata_file = box_dir.join("metadata.json")
76
- box_metadata_file.open("w") do |f|
77
- f.write(JSON.generate({
78
- :provider => provider.to_s
79
- }))
80
- end
81
-
82
- # Create a Vagrantfile
83
- box_vagrantfile = box_dir.join("Vagrantfile")
84
- box_vagrantfile.open("w") do |f|
85
- f.write(options[:vagrantfile])
86
- end
87
-
88
- # Return the box directory
89
- box_dir
90
- end
91
-
92
- # This creates a "box" file that is a valid V1 box.
93
- #
94
- # @return [Pathname] Path to the newly created box.
95
- def box1_file
96
- # Create a temporary directory to store our data we will tar up
97
- td_source = Tempdir.new
98
- td_dest = Tempdir.new
99
-
100
- # Store the temporary directory so it is not deleted until
101
- # this instance is garbage collected.
102
- @_box2_file_temp ||= []
103
- @_box2_file_temp << td_dest
104
-
105
- # The source as a Pathname, which is easier to work with
106
- source = Pathname.new(td_source.path)
107
-
108
- # The destination file
109
- result = Pathname.new(td_dest.path).join("temporary.box")
110
-
111
- # Put a "box.ovf" in there.
112
- source.join("box.ovf").open("w") do |f|
113
- f.write("FOO!")
114
- end
115
-
116
- Dir.chdir(source) do
117
- # Find all the files in our current directory and tar it up!
118
- files = Dir.glob(File.join(".", "**", "*"))
119
-
120
- # Package!
121
- Vagrant::Util::Subprocess.execute("bsdtar", "-czf", result.to_s, *files)
122
- end
123
-
124
- # Resulting box
125
- result
126
- end
127
-
128
- # This creates a "box" file with the given provider.
129
- #
130
- # @param [Symbol] provider Provider for the box.
131
- # @return [Pathname] Path to the newly created box.
132
- def box2_file(provider)
133
- # This is the metadata we want to store in our file
134
- metadata = {
135
- "type" => "v2_box",
136
- "provider" => provider
137
- }
138
-
139
- # Create a temporary directory to store our data we will tar up
140
- td_source = Tempdir.new
141
- td_dest = Tempdir.new
142
-
143
- # Store the temporary directory so it is not deleted until
144
- # this instance is garbage collected.
145
- @_box2_file_temp ||= []
146
- @_box2_file_temp << td_dest
147
-
148
- # The source as a Pathname, which is easier to work with
149
- source = Pathname.new(td_source.path)
150
-
151
- # The destination file
152
- result = Pathname.new(td_dest.path).join("temporary.box")
153
-
154
- # Put the metadata.json in here.
155
- source.join("metadata.json").open("w") do |f|
156
- f.write(JSON.generate(metadata))
157
- end
158
-
159
- Dir.chdir(source) do
160
- # Find all the files in our current directory and tar it up!
161
- files = Dir.glob(File.join(".", "**", "*"))
162
-
163
- # Package!
164
- Vagrant::Util::Subprocess.execute("bsdtar", "-czf", result.to_s, *files)
165
- end
166
-
167
- # Resulting box
168
- result
169
- end
170
-
171
- def boxes_dir
172
- dir = @homedir.join("boxes")
173
- dir.mkpath
174
- dir
175
- end
176
- end
177
- end
@@ -1,104 +0,0 @@
1
- require "tempfile"
2
-
3
- require "support/tempdir"
4
- require "unit/support/isolated_environment"
5
-
6
- shared_context "unit" do
7
- before(:each) do
8
- # State to store the list of registered plugins that we have to
9
- # unregister later.
10
- @_plugins = []
11
-
12
- # Create a thing to store our temporary files so that they aren't
13
- # unlinked right away.
14
- @_temp_files = []
15
- end
16
-
17
- after(:each) do
18
- # Unregister each of the plugins we have may have temporarily
19
- # registered for the duration of this test.
20
- @_plugins.each do |plugin|
21
- Vagrant.plugin("1").manager.unregister(plugin)
22
- Vagrant.plugin("2").manager.unregister(plugin)
23
- end
24
- end
25
-
26
- # This creates an isolated environment so that Vagrant doesn't
27
- # muck around with your real system during unit tests.
28
- #
29
- # The returned isolated environment has a variety of helper
30
- # methods on it to easily create files, Vagrantfiles, boxes,
31
- # etc.
32
- def isolated_environment
33
- env = Unit::IsolatedEnvironment.new
34
- yield env if block_given?
35
- env
36
- end
37
-
38
- # This registers a Vagrant plugin for the duration of a single test.
39
- # This will yield a new plugin class that you can then call the
40
- # public plugin methods on.
41
- #
42
- # @yield [plugin] Yields the plugin class for you to call the public
43
- # API that you need to.
44
- def register_plugin(version=nil)
45
- version ||= Vagrant::Config::CURRENT_VERSION
46
- plugin = Class.new(Vagrant.plugin(version))
47
- plugin.name("Test Plugin #{plugin.inspect}")
48
- yield plugin if block_given?
49
- @_plugins << plugin
50
- plugin
51
- end
52
-
53
- # This helper creates a temporary file and returns a Pathname
54
- # object pointed to it.
55
- #
56
- # @return [Pathname]
57
- def temporary_file(contents=nil)
58
- f = Tempfile.new("vagrant-unit")
59
-
60
- if contents
61
- f.write(contents)
62
- f.flush
63
- end
64
-
65
- # Store the tempfile in an instance variable so that it is not
66
- # garbage collected, so that the tempfile is not unlinked.
67
- @_temp_files << f
68
-
69
- return Pathname.new(f.path)
70
- end
71
-
72
- # This creates a temporary directory and returns a {Pathname}
73
- # pointing to it.
74
- #
75
- # @return [Pathname]
76
- def temporary_dir
77
- # Create a temporary directory and append it to the instance
78
- # variabe so that it isn't garbage collected and deleted
79
- d = Tempdir.new("vagrant-unit")
80
- @_temp_files << d
81
-
82
- # Return the pathname
83
- return Pathname.new(d.path)
84
- end
85
-
86
- # This helper provides temporary environmental variable changes.
87
- def with_temp_env(environment)
88
- # Build up the new environment, preserving the old values so we
89
- # can replace them back in later.
90
- old_env = {}
91
- environment.each do |key, value|
92
- old_env[key] = ENV[key]
93
- ENV[key] = value
94
- end
95
-
96
- # Call the block, returning its return value
97
- return yield
98
- ensure
99
- # Reset the environment no matter what
100
- old_env.each do |key, value|
101
- ENV[key] = value
102
- end
103
- end
104
- end