vagrant 0.3.4 → 0.4.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.
- data/Gemfile +2 -2
- data/README.md +2 -2
- data/Rakefile +1 -1
- data/VERSION +1 -1
- data/config/default.rb +13 -3
- data/lib/vagrant.rb +10 -13
- data/lib/vagrant/actions/base.rb +14 -2
- data/lib/vagrant/actions/box/download.rb +2 -7
- data/lib/vagrant/actions/box/verify.rb +1 -1
- data/lib/vagrant/actions/runner.rb +0 -1
- data/lib/vagrant/actions/vm/boot.rb +2 -6
- data/lib/vagrant/actions/vm/customize.rb +7 -5
- data/lib/vagrant/actions/vm/destroy.rb +4 -3
- data/lib/vagrant/actions/vm/down.rb +6 -3
- data/lib/vagrant/actions/vm/export.rb +2 -4
- data/lib/vagrant/actions/vm/forward_ports.rb +77 -16
- data/lib/vagrant/actions/vm/halt.rb +10 -2
- data/lib/vagrant/actions/vm/import.rb +2 -4
- data/lib/vagrant/actions/vm/move_hard_drive.rb +2 -2
- data/lib/vagrant/actions/vm/network.rb +120 -0
- data/lib/vagrant/actions/vm/package.rb +11 -7
- data/lib/vagrant/actions/vm/provision.rb +3 -3
- data/lib/vagrant/actions/vm/reload.rb +2 -9
- data/lib/vagrant/actions/vm/shared_folders.rb +19 -39
- data/lib/vagrant/actions/vm/start.rb +10 -2
- data/lib/vagrant/actions/vm/up.rb +5 -6
- data/lib/vagrant/active_list.rb +23 -13
- data/lib/vagrant/box.rb +2 -2
- data/lib/vagrant/busy.rb +3 -3
- data/lib/vagrant/command.rb +2 -2
- data/lib/vagrant/commands/base.rb +40 -20
- data/lib/vagrant/commands/destroy.rb +17 -3
- data/lib/vagrant/commands/halt.rb +23 -3
- data/lib/vagrant/commands/package.rb +54 -14
- data/lib/vagrant/commands/provision.rb +31 -0
- data/lib/vagrant/commands/reload.rb +16 -3
- data/lib/vagrant/commands/resume.rb +16 -3
- data/lib/vagrant/commands/ssh.rb +25 -3
- data/lib/vagrant/commands/ssh_config.rb +20 -5
- data/lib/vagrant/commands/status.rb +107 -40
- data/lib/vagrant/commands/suspend.rb +16 -3
- data/lib/vagrant/commands/up.rb +26 -7
- data/lib/vagrant/config.rb +82 -12
- data/lib/vagrant/downloaders/base.rb +8 -1
- data/lib/vagrant/downloaders/http.rb +31 -19
- data/lib/vagrant/environment.rb +146 -49
- data/lib/vagrant/provisioners/base.rb +19 -5
- data/lib/vagrant/provisioners/chef.rb +12 -4
- data/lib/vagrant/provisioners/chef_server.rb +13 -6
- data/lib/vagrant/provisioners/chef_solo.rb +7 -3
- data/lib/vagrant/resource_logger.rb +126 -0
- data/lib/vagrant/ssh.rb +109 -8
- data/lib/vagrant/systems/base.rb +70 -0
- data/lib/vagrant/systems/linux.rb +137 -0
- data/lib/vagrant/util.rb +1 -45
- data/lib/vagrant/util/error_helper.rb +13 -0
- data/lib/vagrant/util/glob_loader.rb +22 -0
- data/lib/vagrant/util/output_helper.rb +9 -0
- data/lib/vagrant/util/plain_logger.rb +12 -0
- data/lib/vagrant/util/platform.rb +7 -2
- data/lib/vagrant/util/template_renderer.rb +2 -2
- data/lib/vagrant/util/translator.rb +35 -0
- data/lib/vagrant/vm.rb +91 -10
- data/templates/crontab_entry.erb +1 -0
- data/templates/network_entry.erb +8 -0
- data/templates/ssh_config.erb +1 -0
- data/templates/{errors.yml → strings.yml} +111 -3
- data/templates/sync.erb +14 -0
- data/test/test_helper.rb +46 -3
- data/test/vagrant/actions/box/download_test.rb +0 -17
- data/test/vagrant/actions/vm/boot_test.rb +3 -10
- data/test/vagrant/actions/vm/customize_test.rb +6 -0
- data/test/vagrant/actions/vm/destroy_test.rb +6 -5
- data/test/vagrant/actions/vm/down_test.rb +5 -11
- data/test/vagrant/actions/vm/export_test.rb +1 -0
- data/test/vagrant/actions/vm/forward_ports_test.rb +92 -15
- data/test/vagrant/actions/vm/halt_test.rb +36 -4
- data/test/vagrant/actions/vm/import_test.rb +2 -0
- data/test/vagrant/actions/vm/network_test.rb +237 -0
- data/test/vagrant/actions/vm/package_test.rb +35 -5
- data/test/vagrant/actions/vm/provision_test.rb +3 -3
- data/test/vagrant/actions/vm/reload_test.rb +1 -1
- data/test/vagrant/actions/vm/shared_folders_test.rb +41 -74
- data/test/vagrant/actions/vm/start_test.rb +41 -3
- data/test/vagrant/actions/vm/up_test.rb +10 -21
- data/test/vagrant/active_list_test.rb +28 -43
- data/test/vagrant/commands/base_test.rb +25 -4
- data/test/vagrant/commands/destroy_test.rb +24 -12
- data/test/vagrant/commands/halt_test.rb +33 -11
- data/test/vagrant/commands/package_test.rb +77 -57
- data/test/vagrant/commands/provision_test.rb +50 -0
- data/test/vagrant/commands/reload_test.rb +27 -11
- data/test/vagrant/commands/resume_test.rb +25 -14
- data/test/vagrant/commands/ssh_config_test.rb +40 -17
- data/test/vagrant/commands/ssh_test.rb +52 -13
- data/test/vagrant/commands/status_test.rb +21 -1
- data/test/vagrant/commands/suspend_test.rb +25 -14
- data/test/vagrant/commands/up_test.rb +25 -19
- data/test/vagrant/config_test.rb +74 -18
- data/test/vagrant/downloaders/base_test.rb +2 -1
- data/test/vagrant/downloaders/http_test.rb +18 -8
- data/test/vagrant/environment_test.rb +245 -77
- data/test/vagrant/provisioners/base_test.rb +4 -4
- data/test/vagrant/provisioners/chef_server_test.rb +18 -7
- data/test/vagrant/provisioners/chef_solo_test.rb +17 -7
- data/test/vagrant/provisioners/chef_test.rb +22 -9
- data/test/vagrant/resource_logger_test.rb +144 -0
- data/test/vagrant/ssh_session_test.rb +46 -0
- data/test/vagrant/ssh_test.rb +42 -2
- data/test/vagrant/systems/linux_test.rb +174 -0
- data/test/vagrant/util/error_helper_test.rb +5 -0
- data/test/vagrant/util/output_helper_test.rb +5 -0
- data/test/vagrant/util/plain_logger_test.rb +17 -0
- data/test/vagrant/util/platform_test.rb +18 -0
- data/test/vagrant/util/{errors_test.rb → translator_test.rb} +25 -21
- data/test/vagrant/util_test.rb +12 -49
- data/test/vagrant/vm_test.rb +133 -11
- data/vagrant.gemspec +39 -15
- metadata +64 -40
- data/lib/vagrant/commands/down.rb +0 -16
- data/lib/vagrant/util/errors.rb +0 -36
- data/lib/vagrant/util/progress_meter.rb +0 -33
- data/test/vagrant/commands/down_test.rb +0 -17
- data/test/vagrant/util/progress_meter_test.rb +0 -33
data/lib/vagrant/util/errors.rb
DELETED
@@ -1,36 +0,0 @@
|
|
1
|
-
require 'yaml'
|
2
|
-
|
3
|
-
module Vagrant
|
4
|
-
module Util
|
5
|
-
# This class is responsible for outputting errors. It retrieves the errors,
|
6
|
-
# based on their key, from the error file, and then outputs it.
|
7
|
-
class Errors
|
8
|
-
@@errors = nil
|
9
|
-
|
10
|
-
class <<self
|
11
|
-
# Resets the internal errors hash to nil, forcing a reload on the next
|
12
|
-
# access of {errors}.
|
13
|
-
def reset!
|
14
|
-
@@errors = nil
|
15
|
-
end
|
16
|
-
|
17
|
-
# Returns the hash of errors from the error YML files. This only loads once,
|
18
|
-
# then returns a cached value until {reset!} is called.
|
19
|
-
#
|
20
|
-
# @return [Hash]
|
21
|
-
def errors
|
22
|
-
@@errors ||= YAML.load_file(File.join(PROJECT_ROOT, "templates", "errors.yml"))
|
23
|
-
end
|
24
|
-
|
25
|
-
# Renders the error with the given key and data parameters and returns
|
26
|
-
# the rendered result.
|
27
|
-
#
|
28
|
-
# @return [String]
|
29
|
-
def error_string(key, data = {})
|
30
|
-
template = errors[key] || "Unknown error key: #{key}"
|
31
|
-
TemplateRenderer.render_string(template, data)
|
32
|
-
end
|
33
|
-
end
|
34
|
-
end
|
35
|
-
end
|
36
|
-
end
|
@@ -1,33 +0,0 @@
|
|
1
|
-
module Vagrant
|
2
|
-
module Util
|
3
|
-
# A mixin which allows any class to be able to show a "progress meter"
|
4
|
-
# to standard out. The progress meter shows the progress of an operation
|
5
|
-
# with console-animated text in stdout.
|
6
|
-
module ProgressMeter
|
7
|
-
# Updates the progress meter with the given progress amount and total.
|
8
|
-
# This method will do the math to figure out a percentage and show it
|
9
|
-
# within stdout.
|
10
|
-
#
|
11
|
-
# @param [Float] progress Progress
|
12
|
-
# @param [Float] total Total
|
13
|
-
def update_progress(progress, total, show_parts=true)
|
14
|
-
percent = (progress.to_f / total.to_f) * 100
|
15
|
-
print "#{cl_reset}Progress: #{percent.to_i}%"
|
16
|
-
print " (#{progress} / #{total})" if show_parts
|
17
|
-
$stdout.flush
|
18
|
-
end
|
19
|
-
|
20
|
-
# Completes the progress meter by resetting it off of the screen.
|
21
|
-
def complete_progress
|
22
|
-
# Just clear the line back out
|
23
|
-
print "#{cl_reset}"
|
24
|
-
end
|
25
|
-
|
26
|
-
def cl_reset
|
27
|
-
reset = "\r"
|
28
|
-
reset += "\e[0K" unless Mario::Platform.windows?
|
29
|
-
reset
|
30
|
-
end
|
31
|
-
end
|
32
|
-
end
|
33
|
-
end
|
@@ -1,17 +0,0 @@
|
|
1
|
-
require File.join(File.dirname(__FILE__), '..', '..', 'test_helper')
|
2
|
-
|
3
|
-
class CommandsDownTest < Test::Unit::TestCase
|
4
|
-
setup do
|
5
|
-
@klass = Vagrant::Commands::Down
|
6
|
-
|
7
|
-
@env = mock_environment
|
8
|
-
@instance = @klass.new(@env)
|
9
|
-
end
|
10
|
-
|
11
|
-
context "executing" do
|
12
|
-
should "just error and exit" do
|
13
|
-
@instance.expects(:error_and_exit).with(:command_deprecation_down)
|
14
|
-
@instance.execute
|
15
|
-
end
|
16
|
-
end
|
17
|
-
end
|
@@ -1,33 +0,0 @@
|
|
1
|
-
require File.join(File.dirname(__FILE__), '..', '..', 'test_helper')
|
2
|
-
|
3
|
-
class ProgressMeterUtilTest < Test::Unit::TestCase
|
4
|
-
class TestProgressMeter
|
5
|
-
include Vagrant::Util::ProgressMeter
|
6
|
-
end
|
7
|
-
|
8
|
-
setup do
|
9
|
-
@instance = TestProgressMeter.new
|
10
|
-
|
11
|
-
Mario::Platform.logger(nil)
|
12
|
-
end
|
13
|
-
|
14
|
-
context "on windows" do
|
15
|
-
setup do
|
16
|
-
Mario::Platform.forced = Mario::Platform::Windows7
|
17
|
-
end
|
18
|
-
|
19
|
-
should "just return \\r for the clear screen" do
|
20
|
-
assert_equal "\r", @instance.cl_reset
|
21
|
-
end
|
22
|
-
end
|
23
|
-
|
24
|
-
context "on other platforms" do
|
25
|
-
setup do
|
26
|
-
Mario::Platform.forced = Mario::Platform::Linux
|
27
|
-
end
|
28
|
-
|
29
|
-
should "return the full clear screen" do
|
30
|
-
assert_equal "\r\e[0K", @instance.cl_reset
|
31
|
-
end
|
32
|
-
end
|
33
|
-
end
|