vagrantup 0.7.8 → 0.8.0

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 (80) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +35 -0
  3. data/Gemfile +1 -7
  4. data/Rakefile +0 -11
  5. data/bin/vagrant +4 -0
  6. data/config/default.rb +1 -2
  7. data/lib/vagrant.rb +7 -5
  8. data/lib/vagrant/action.rb +5 -1
  9. data/lib/vagrant/action/builtin.rb +4 -1
  10. data/lib/vagrant/action/general/package.rb +6 -2
  11. data/lib/vagrant/action/vm.rb +2 -0
  12. data/lib/vagrant/action/vm/clear_forwarded_ports.rb +9 -22
  13. data/lib/vagrant/action/vm/clear_shared_folders.rb +9 -14
  14. data/lib/vagrant/action/vm/customize.rb +9 -4
  15. data/lib/vagrant/action/vm/forward_ports.rb +10 -11
  16. data/lib/vagrant/action/vm/match_mac_address.rb +8 -3
  17. data/lib/vagrant/action/vm/modify.rb +37 -0
  18. data/lib/vagrant/action/vm/network.rb +9 -2
  19. data/lib/vagrant/action/vm/provision.rb +10 -17
  20. data/lib/vagrant/action/vm/provisioner_cleanup.rb +26 -0
  21. data/lib/vagrant/action/vm/share_folders.rb +16 -8
  22. data/lib/vagrant/action/warden.rb +8 -2
  23. data/lib/vagrant/command/ssh.rb +4 -4
  24. data/lib/vagrant/command/ssh_config.rb +4 -2
  25. data/lib/vagrant/config/ssh.rb +3 -0
  26. data/lib/vagrant/config/vm.rb +16 -12
  27. data/lib/vagrant/downloaders/http.rb +2 -0
  28. data/lib/vagrant/environment.rb +136 -12
  29. data/lib/vagrant/errors.rb +15 -0
  30. data/lib/vagrant/provisioners.rb +1 -1
  31. data/lib/vagrant/provisioners/base.rb +4 -0
  32. data/lib/vagrant/provisioners/chef.rb +13 -11
  33. data/lib/vagrant/provisioners/{chef_server.rb → chef_client.rb} +5 -5
  34. data/lib/vagrant/provisioners/chef_solo.rb +48 -89
  35. data/lib/vagrant/provisioners/shell.rb +47 -12
  36. data/lib/vagrant/ssh.rb +61 -27
  37. data/lib/vagrant/systems.rb +1 -0
  38. data/lib/vagrant/systems/base.rb +1 -1
  39. data/lib/vagrant/systems/linux.rb +7 -9
  40. data/lib/vagrant/systems/redhat.rb +12 -4
  41. data/lib/vagrant/systems/solaris.rb +9 -4
  42. data/lib/vagrant/systems/suse.rb +9 -0
  43. data/lib/vagrant/ui.rb +12 -5
  44. data/lib/vagrant/util.rb +2 -2
  45. data/lib/vagrant/util/counter.rb +22 -0
  46. data/lib/vagrant/util/platform.rb +1 -2
  47. data/lib/vagrant/util/safe_exec.rb +28 -0
  48. data/lib/vagrant/version.rb +1 -1
  49. data/lib/vagrant/vm.rb +2 -0
  50. data/templates/chef_solo_solo.erb +4 -4
  51. data/templates/commands/init/Vagrantfile.erb +4 -0
  52. data/templates/locales/en.yml +31 -8
  53. data/templates/ssh_config.erb +6 -0
  54. data/test/test_helper.rb +5 -3
  55. data/test/vagrant/action/builder_test.rb +4 -0
  56. data/test/vagrant/action/vm/clear_forwarded_ports_test.rb +18 -38
  57. data/test/vagrant/action/vm/clear_shared_folders_test.rb +7 -16
  58. data/test/vagrant/action/vm/customize_test.rb +12 -5
  59. data/test/vagrant/action/vm/forward_ports_test.rb +12 -7
  60. data/test/vagrant/action/vm/match_mac_address_test.rb +5 -1
  61. data/test/vagrant/action/vm/modify_test.rb +38 -0
  62. data/test/vagrant/action/vm/provision_test.rb +13 -38
  63. data/test/vagrant/action/vm/provisioner_cleanup_test.rb +56 -0
  64. data/test/vagrant/action/vm/share_folders_test.rb +10 -5
  65. data/test/vagrant/action/warden_test.rb +13 -7
  66. data/test/vagrant/config/vm_test.rb +0 -22
  67. data/test/vagrant/downloaders/http_test.rb +2 -0
  68. data/test/vagrant/environment_test.rb +110 -20
  69. data/test/vagrant/provisioners/{chef_server_test.rb → chef_client_test.rb} +2 -2
  70. data/test/vagrant/provisioners/chef_solo_test.rb +16 -173
  71. data/test/vagrant/ssh_test.rb +8 -43
  72. data/test/vagrant/systems/linux_test.rb +9 -19
  73. data/test/vagrant/util/counter_test.rb +29 -0
  74. data/test/vagrant/util/platform_test.rb +2 -2
  75. data/vagrant.gemspec +1 -2
  76. metadata +13 -23
  77. data/lib/vagrant/util/plain_logger.rb +0 -25
  78. data/lib/vagrant/util/resource_logger.rb +0 -63
  79. data/test/vagrant/util/plain_logger_test.rb +0 -17
  80. data/test/vagrant/util/resource_logger_test.rb +0 -78
@@ -1,78 +0,0 @@
1
- require "test_helper"
2
-
3
- class ResourceLoggerUtilTest < Test::Unit::TestCase
4
- setup do
5
- @klass = Vagrant::Util::ResourceLogger
6
- end
7
-
8
- context "singleton logger" do
9
- setup do
10
- @klass.reset_singleton_logger!
11
-
12
- @result = mock("result")
13
- end
14
-
15
- should "return a nil plain logger if the environment is not loaded" do
16
- env = vagrant_env
17
- env.stubs(:loaded?).returns(false)
18
-
19
- Vagrant::Util::PlainLogger.expects(:new).with(nil).returns(@result)
20
- assert_equal @result, @klass.singleton_logger(env)
21
- end
22
-
23
- should "return a logger with the output file set if environment is ready" do
24
- env = vagrant_env
25
-
26
- Vagrant::Util::PlainLogger.expects(:new).returns(@result).with() do |path|
27
- assert path.to_s =~ /logs/
28
- true
29
- end
30
-
31
- assert_equal @result, @klass.singleton_logger(env)
32
- end
33
-
34
- should "only load the logger once" do
35
- env = vagrant_env
36
-
37
- Vagrant::Util::PlainLogger.expects(:new).with(anything).returns(@result)
38
- assert_equal @result, @klass.singleton_logger(env)
39
- assert_equal @result, @klass.singleton_logger(env)
40
- assert_equal @result, @klass.singleton_logger(env)
41
- end
42
- end
43
-
44
- context "initialization" do
45
- should "setup the logger and attributes" do
46
- env = vagrant_env
47
- resource = mock("resource")
48
- result = mock("result")
49
-
50
- @klass.expects(:singleton_logger).with(env).returns(result)
51
- instance = @klass.new(resource, env)
52
- assert_equal resource, instance.resource
53
- assert_equal env, instance.env
54
- assert_equal result, instance.logger
55
- end
56
- end
57
-
58
- context "with an instance" do
59
- setup do
60
- @resource = "foo"
61
- @env = vagrant_env
62
- @logger = mock("logger")
63
-
64
- @klass.stubs(:singleton_logger).returns(@logger)
65
- @instance = @klass.new(@resource, @env)
66
- end
67
-
68
- context "logging methods" do
69
- [:debug, :info, :error, :fatal].each do |method|
70
- should "log with the proper format on #{method}" do
71
- message = "bar"
72
- @logger.expects(method).with("[#{@resource}] #{message}").once
73
- @instance.send(method, message)
74
- end
75
- end
76
- end
77
- end
78
- end