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.rb
CHANGED
@@ -1,51 +1,7 @@
|
|
1
1
|
module Vagrant
|
2
2
|
module Util
|
3
3
|
def self.included(base)
|
4
|
-
base.extend
|
5
|
-
end
|
6
|
-
|
7
|
-
def wrap_output
|
8
|
-
puts "====================================================================="
|
9
|
-
yield
|
10
|
-
puts "====================================================================="
|
11
|
-
end
|
12
|
-
|
13
|
-
def error_and_exit(key, data = {})
|
14
|
-
abort <<-error
|
15
|
-
=====================================================================
|
16
|
-
Vagrant experienced an error!
|
17
|
-
|
18
|
-
#{Errors.error_string(key, data).chomp}
|
19
|
-
=====================================================================
|
20
|
-
error
|
21
|
-
end
|
22
|
-
|
23
|
-
def logger
|
24
|
-
Logger.singleton_logger
|
25
|
-
end
|
26
|
-
end
|
27
|
-
|
28
|
-
class Logger < ::Logger
|
29
|
-
@@singleton_logger = nil
|
30
|
-
|
31
|
-
class << self
|
32
|
-
def singleton_logger
|
33
|
-
# TODO: Buffer messages until config is loaded, then output them?
|
34
|
-
if Vagrant.config.loaded?
|
35
|
-
@@singleton_logger ||= Vagrant::Logger.new(Vagrant.config.vagrant.log_output)
|
36
|
-
else
|
37
|
-
Vagrant::Logger.new(nil)
|
38
|
-
end
|
39
|
-
end
|
40
|
-
|
41
|
-
def reset_logger!
|
42
|
-
@@singleton_logger = nil
|
43
|
-
end
|
44
|
-
end
|
45
|
-
|
46
|
-
def format_message(level, time, progname, msg)
|
47
|
-
"[#{level} #{time.strftime('%m-%d-%Y %X')}] Vagrant: #{msg}\n"
|
4
|
+
base.extend(self)
|
48
5
|
end
|
49
6
|
end
|
50
7
|
end
|
51
|
-
|
@@ -0,0 +1,13 @@
|
|
1
|
+
module Vagrant
|
2
|
+
module Util
|
3
|
+
def error_and_exit(key, data = {})
|
4
|
+
abort <<-error
|
5
|
+
=====================================================================
|
6
|
+
Vagrant experienced an error!
|
7
|
+
|
8
|
+
#{Translator.t(key, data).chomp}
|
9
|
+
=====================================================================
|
10
|
+
error
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
module Vagrant
|
2
|
+
# Eases the processes of loading specific files then globbing
|
3
|
+
# the rest from a specified directory.
|
4
|
+
module GlobLoader
|
5
|
+
# Glob requires all ruby files in a directory, optionally loading select
|
6
|
+
# files initially (since others may depend on them).
|
7
|
+
#
|
8
|
+
# @param [String] dir The directory to glob
|
9
|
+
# @param [Array<String>] initial_files Initial files (relative to `dir`)
|
10
|
+
# to load
|
11
|
+
def self.glob_require(dir, initial_files=[])
|
12
|
+
initial_files.each do |file|
|
13
|
+
require File.expand_path(file, dir)
|
14
|
+
end
|
15
|
+
|
16
|
+
# Glob require the rest
|
17
|
+
Dir[File.join(dir, "**", "*.rb")].each do |f|
|
18
|
+
require File.expand_path(f)
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
module Vagrant
|
2
|
+
module Util
|
3
|
+
# Subclass of the standard library logger which has no format on
|
4
|
+
# its own. The message sent to the logger is outputted as-is.
|
5
|
+
class PlainLogger < ::Logger
|
6
|
+
def format_message(level, time, progname, msg)
|
7
|
+
# We do no formatting, its up to the user
|
8
|
+
"#{msg}\n"
|
9
|
+
end
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
@@ -2,11 +2,16 @@ module Vagrant
|
|
2
2
|
module Util
|
3
3
|
# This class just contains some platform checking code.
|
4
4
|
class Platform
|
5
|
-
class <<self
|
5
|
+
class << self
|
6
6
|
def leopard?
|
7
7
|
RUBY_PLATFORM.downcase.include?("darwin9")
|
8
8
|
end
|
9
|
+
|
10
|
+
def tar_file_options
|
11
|
+
# create, write only, fail if the file exists, binary if windows
|
12
|
+
File::WRONLY|File::EXCL|File::CREAT|(Mario::Platform.windows? ? File::BINARY : 0)
|
13
|
+
end
|
9
14
|
end
|
10
15
|
end
|
11
16
|
end
|
12
|
-
end
|
17
|
+
end
|
@@ -6,7 +6,7 @@ module Vagrant
|
|
6
6
|
# This class is used to render the ERB templates in the
|
7
7
|
# `GEM_ROOT/templates` directory.
|
8
8
|
class TemplateRenderer < OpenStruct
|
9
|
-
class <<self
|
9
|
+
class << self
|
10
10
|
# Render a given template and return the result. This method optionally
|
11
11
|
# takes a block which will be passed the renderer prior to rendering, which
|
12
12
|
# allows the caller to set any view variables within the renderer itself.
|
@@ -80,4 +80,4 @@ module Vagrant
|
|
80
80
|
end
|
81
81
|
end
|
82
82
|
end
|
83
|
-
end
|
83
|
+
end
|
@@ -0,0 +1,35 @@
|
|
1
|
+
require 'yaml'
|
2
|
+
|
3
|
+
module Vagrant
|
4
|
+
module Util
|
5
|
+
# This class is responsible for reading static messages from the strings.yml file.
|
6
|
+
class Translator
|
7
|
+
@@strings = nil
|
8
|
+
|
9
|
+
class <<self
|
10
|
+
# Resets the internal strings hash to nil, forcing a reload on the next
|
11
|
+
# access of {strings}.
|
12
|
+
def reset!
|
13
|
+
@@strings = nil
|
14
|
+
end
|
15
|
+
|
16
|
+
# Returns the hash of strings from the error YML files. This only loads once,
|
17
|
+
# then returns a cached value until {reset!} is called.
|
18
|
+
#
|
19
|
+
# @return [Hash]
|
20
|
+
def strings
|
21
|
+
@@strings ||= YAML.load_file(File.join(PROJECT_ROOT, "templates", "strings.yml"))
|
22
|
+
end
|
23
|
+
|
24
|
+
# Renders the string with the given key and data parameters and returns
|
25
|
+
# the rendered result.
|
26
|
+
#
|
27
|
+
# @return [String]
|
28
|
+
def t(key, data = {})
|
29
|
+
template = strings[key] || "Unknown strings key: #{key}"
|
30
|
+
TemplateRenderer.render_string(template, data)
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
data/lib/vagrant/vm.rb
CHANGED
@@ -2,22 +2,87 @@ module Vagrant
|
|
2
2
|
class VM < Actions::Runner
|
3
3
|
include Vagrant::Util
|
4
4
|
|
5
|
-
|
5
|
+
attr_reader :env
|
6
|
+
attr_reader :system
|
7
|
+
attr_reader :name
|
6
8
|
attr_accessor :vm
|
7
|
-
attr_accessor :from
|
8
9
|
|
9
10
|
class << self
|
10
11
|
# Finds a virtual machine by a given UUID and either returns
|
11
12
|
# a Vagrant::VM object or returns nil.
|
12
|
-
def find(uuid)
|
13
|
+
def find(uuid, env=nil, vm_name=nil)
|
13
14
|
vm = VirtualBox::VM.find(uuid)
|
14
|
-
|
15
|
-
new(vm)
|
15
|
+
new(:vm => vm, :env => env, :vm_name => vm_name)
|
16
16
|
end
|
17
17
|
end
|
18
18
|
|
19
|
-
def initialize(
|
20
|
-
|
19
|
+
def initialize(opts=nil)
|
20
|
+
defaults = {
|
21
|
+
:vm => nil,
|
22
|
+
:env => nil,
|
23
|
+
:vm_name => nil
|
24
|
+
}
|
25
|
+
|
26
|
+
opts = defaults.merge(opts || {})
|
27
|
+
|
28
|
+
@vm = opts[:vm]
|
29
|
+
@name = opts[:vm_name]
|
30
|
+
|
31
|
+
if !opts[:env].nil?
|
32
|
+
# We have an environment, so we create a new child environment
|
33
|
+
# specifically for this VM. This step will load any custom
|
34
|
+
# config and such.
|
35
|
+
@env = Vagrant::Environment.new({
|
36
|
+
:cwd => opts[:env].cwd,
|
37
|
+
:parent => opts[:env],
|
38
|
+
:vm_name => opts[:vm_name],
|
39
|
+
:vm => self
|
40
|
+
}).load!
|
41
|
+
|
42
|
+
# Load the associated system.
|
43
|
+
load_system!
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
# Loads the system associated with the VM. The system class is
|
48
|
+
# responsible for OS-specific functionality. More information
|
49
|
+
# can be found by reading the documentation on {Vagrant::Systems::Base}.
|
50
|
+
#
|
51
|
+
# **This method should never be called manually.**
|
52
|
+
def load_system!
|
53
|
+
system = env.config.vm.system
|
54
|
+
|
55
|
+
if system.is_a?(Class)
|
56
|
+
@system = system.new(self)
|
57
|
+
error_and_exit(:system_invalid_class, :system => system.to_s) unless @system.is_a?(Systems::Base)
|
58
|
+
elsif system.is_a?(Symbol)
|
59
|
+
# Hard-coded internal systems
|
60
|
+
mapping = { :linux => Systems::Linux }
|
61
|
+
|
62
|
+
if !mapping.has_key?(system)
|
63
|
+
error_and_exit(:system_unknown_type, :system => system.to_s)
|
64
|
+
return # for tests
|
65
|
+
end
|
66
|
+
|
67
|
+
@system = mapping[system].new(self)
|
68
|
+
else
|
69
|
+
error_and_exit(:system_unspecified)
|
70
|
+
end
|
71
|
+
end
|
72
|
+
|
73
|
+
# Access the {Vagrant::SSH} object associated with this VM.
|
74
|
+
# On the initial call, this will initialize the object. On
|
75
|
+
# subsequent calls it will reuse the existing object.
|
76
|
+
def ssh
|
77
|
+
@ssh ||= SSH.new(env)
|
78
|
+
end
|
79
|
+
|
80
|
+
# Returns a boolean true if the VM has been created, otherwise
|
81
|
+
# returns false.
|
82
|
+
#
|
83
|
+
# @return [Boolean]
|
84
|
+
def created?
|
85
|
+
!vm.nil?
|
21
86
|
end
|
22
87
|
|
23
88
|
def uuid
|
@@ -28,18 +93,34 @@ module Vagrant
|
|
28
93
|
@vm = VirtualBox::VM.find(@vm.uuid)
|
29
94
|
end
|
30
95
|
|
31
|
-
def package(
|
32
|
-
add_action(Actions::VM::Export)
|
33
|
-
add_action(Actions::VM::Package,
|
96
|
+
def package(options=nil)
|
97
|
+
add_action(Actions::VM::Export, options)
|
98
|
+
add_action(Actions::VM::Package, options)
|
34
99
|
execute!
|
35
100
|
end
|
36
101
|
|
102
|
+
def up(options=nil)
|
103
|
+
execute!(Actions::VM::Up, options)
|
104
|
+
end
|
105
|
+
|
37
106
|
def start
|
38
107
|
return if @vm.running?
|
39
108
|
|
40
109
|
execute!(Actions::VM::Start)
|
41
110
|
end
|
42
111
|
|
112
|
+
def halt(options=nil)
|
113
|
+
execute!(Actions::VM::Halt, options)
|
114
|
+
end
|
115
|
+
|
116
|
+
def reload
|
117
|
+
execute!(Actions::VM::Reload)
|
118
|
+
end
|
119
|
+
|
120
|
+
def provision
|
121
|
+
execute!(Actions::VM::Provision)
|
122
|
+
end
|
123
|
+
|
43
124
|
def destroy
|
44
125
|
execute!(Actions::VM::Down)
|
45
126
|
end
|
@@ -0,0 +1 @@
|
|
1
|
+
* * * * * <%= scriptname %> '<%= syncopts %>' '<%= guestpath %>' '<%= syncpath %>' '-prefer <%= guestpath %>'
|
@@ -0,0 +1,8 @@
|
|
1
|
+
#VAGRANT-BEGIN
|
2
|
+
# The contents below are automatically generated by Vagrant.
|
3
|
+
# Please do not modify any of these contents.
|
4
|
+
auto eth<%= net_options[:adapter] %>
|
5
|
+
iface eth<%= net_options[:adapter] %> inet static
|
6
|
+
address <%= net_options[:ip] %>
|
7
|
+
netmask <%= net_options[:netmask] %>
|
8
|
+
#VAGRANT-END
|
data/templates/ssh_config.erb
CHANGED
@@ -3,6 +3,46 @@
|
|
3
3
|
# In short, | means keep new lines, trim whitespace left and right
|
4
4
|
# The |- does the above, but trims the new line at the end of all text
|
5
5
|
|
6
|
+
#---------------------------------------------------------------------
|
7
|
+
# CATEGORY: Status Messages
|
8
|
+
#---------------------------------------------------------------------
|
9
|
+
:status_listing: |-
|
10
|
+
This environment represents multiple VMs. The VMs will be listed
|
11
|
+
below with a short status. For more detailed information about a
|
12
|
+
VM, run `vagrant status NAME`.
|
13
|
+
:status_no_environment: |-
|
14
|
+
No vagrant environment detected. Run `vagrant init` to setup a Vagrantfile
|
15
|
+
in the current directory to get started with Vagrant.
|
16
|
+
:status_not_created: |-
|
17
|
+
The environment has not yet been created. Run `vagrant up` to create the
|
18
|
+
environment.
|
19
|
+
:status_created: |-
|
20
|
+
The environment has been created. The status of the current environment's
|
21
|
+
virtual machine is: "<%= vm_state %>"
|
22
|
+
|
23
|
+
<%= additional_message %>
|
24
|
+
:status_created_running: |-
|
25
|
+
To stop this VM, you can run `vagrant halt` to shut it down forcefully,
|
26
|
+
or you can run `vagrant suspend` to simply suspend the virtual machine.
|
27
|
+
In either case, to restart it again, simply run a `vagrant up`.
|
28
|
+
:status_created_saved: |-
|
29
|
+
To resume this VM, simply run `vagrant up`.
|
30
|
+
:status_created_powered_off: |-
|
31
|
+
To restart this VM, simply run `vagrant up`.
|
32
|
+
:status_global: |-
|
33
|
+
Below is a list of virtual machines which are currently created and were
|
34
|
+
created by a Vagrant environment. The path listed was the "last known path"
|
35
|
+
of the environment (it may have moved).
|
36
|
+
|
37
|
+
<%= entries.join("\n\n") %>
|
38
|
+
:status_global_entry: |-
|
39
|
+
Name: <%= vm.vm.name %>
|
40
|
+
Path: <%= data["path"] %>
|
41
|
+
Created at: <%= Time.at(data["created_at"]) %>
|
42
|
+
|
43
|
+
#---------------------------------------------------------------------
|
44
|
+
# CATEGORY: Error Messages
|
45
|
+
#---------------------------------------------------------------------
|
6
46
|
:box_already_exists: |-
|
7
47
|
This box appears to already exist! Please call `vagrant box remove <%= box_name %>`
|
8
48
|
and then try to add it again.
|
@@ -38,6 +78,11 @@
|
|
38
78
|
The validation key set for `config.chef.validation_key_path` does not exist! This
|
39
79
|
file needs to exist so it can be uploaded to the virtual machine. It is
|
40
80
|
currently set to "<%= Vagrant.config.chef.validation_key_path %>"
|
81
|
+
:chef_not_detected: |-
|
82
|
+
The `<%= binary %>` binary appears to not be in the PATH of the guest. This
|
83
|
+
could be because the PATH is not properly setup or perhaps chef is not
|
84
|
+
installed on this guest. Chef provisioning can not continue without
|
85
|
+
chef properly installed.
|
41
86
|
:command_box_invalid: |-
|
42
87
|
Please specify a valid action to take on the boxes, either
|
43
88
|
`add` or `remove`. Examples:
|
@@ -45,9 +90,6 @@
|
|
45
90
|
vagrant box add name uri
|
46
91
|
vagrant box remove name
|
47
92
|
vagrant box list
|
48
|
-
:command_deprecation_down: |-
|
49
|
-
`vagrant down` is now `vagrant destroy`. Please use that command instead. This
|
50
|
-
warning will be removed in future versions.
|
51
93
|
:dotfile_error: |-
|
52
94
|
The dotfile which Vagrant uses to store the UUID of the project's
|
53
95
|
virtual machine already exists and is not a file! The dotfile is
|
@@ -69,8 +111,18 @@
|
|
69
111
|
already be created, but unfortunately this vagrant still appears to
|
70
112
|
have no box! You can setup the environment by setting up your
|
71
113
|
<%= Vagrant::Environment::ROOTFILE_NAME %> and running `vagrant up`
|
114
|
+
:network_not_found: |-
|
115
|
+
The specified host network could not be found: <%= name %>.
|
116
|
+
If the name specification is removed, Vagrant will create a new
|
117
|
+
host only network for you. Alternatively, please create the
|
118
|
+
specified network manually.
|
72
119
|
:package_include_file_doesnt_exist: |-
|
73
120
|
File specified to include: '<%= filename %>' does not exist!
|
121
|
+
:package_multivm: |-
|
122
|
+
Because this Vagrant environment represents multiple VMs, a
|
123
|
+
specific VM must be specified. This can be done by calling
|
124
|
+
`vagrant package NAME` where NAME is a valid VM represented by
|
125
|
+
your Vagrantfile.
|
74
126
|
:package_requires_export: |-
|
75
127
|
Package must be used in conjunction with export.
|
76
128
|
:provisioner_invalid_class: |-
|
@@ -92,6 +144,11 @@
|
|
92
144
|
permissions on the following file to 0600 and then try running this command again:
|
93
145
|
|
94
146
|
<%= key_path %>
|
147
|
+
:ssh_bad_exit_status: |-
|
148
|
+
The following SSH command responded with a non-zero exit status.
|
149
|
+
Vagrant assumes that this means the command failed!
|
150
|
+
|
151
|
+
<%= command %>
|
95
152
|
:ssh_unavailable_windows: |-
|
96
153
|
`vagrant ssh` isn't available on the Windows platform. The
|
97
154
|
vagrant.ppk file is available at
|
@@ -106,7 +163,37 @@
|
|
106
163
|
For a more detailed guide please consult:
|
107
164
|
|
108
165
|
http://vagrantup.com/docs/getting-started/windows.html
|
166
|
+
:ssh_multivm: |-
|
167
|
+
Because this Vagrant environment represents multiple VMs, a
|
168
|
+
specific VM must be specified. This can be done by calling
|
169
|
+
`vagrant ssh NAME` where NAME is a valid VM represented by
|
170
|
+
your Vagrantfile.
|
171
|
+
|
172
|
+
Alternatively, if you mark one of your VMs as 'primary,'
|
173
|
+
then Vagrant will default to that VM. This can be done by
|
174
|
+
specifying `:primary => true` when defining the VM. Example:
|
109
175
|
|
176
|
+
config.vm.define(:foo, :primary => true) do |config|
|
177
|
+
...
|
178
|
+
end
|
179
|
+
:ssh_config_multivm: |-
|
180
|
+
Because this Vagrant environment represents multiple VMs, a
|
181
|
+
specific VM must be specified. This can be done by calling
|
182
|
+
`vagrant ssh-config NAME` where NAME is a valid VM represented by
|
183
|
+
your Vagrantfile.
|
184
|
+
:system_invalid_class: |-
|
185
|
+
The specified system does not inherit from `Vagrant::Systems::Base`. The
|
186
|
+
specified system class must inherit from this class.
|
187
|
+
|
188
|
+
The specified system class was: <%= system %>
|
189
|
+
:system_unknown_type: |-
|
190
|
+
The specified system type is unknown: <%= system %>. Please change this
|
191
|
+
to a proper value.
|
192
|
+
:system_unspecified: |-
|
193
|
+
A VM system type must be specified! This is done via the `config.vm.system`
|
194
|
+
configuration value. Please read the documentation online for more information.
|
195
|
+
:unknown_vm: |-
|
196
|
+
The specified VM could not be found: <%= vm %>
|
110
197
|
:virtualbox_import_failure: |-
|
111
198
|
The VM import failed! Try running `VBoxManage import` on the box file
|
112
199
|
manually for more verbose error output.
|
@@ -133,6 +220,13 @@
|
|
133
220
|
The vagrant virtual environment you are trying to suspend must be running to be suspended.
|
134
221
|
:vm_not_suspended: |-
|
135
222
|
The vagrant virtual environment you are trying to resume is not in a suspended state.
|
223
|
+
:vm_port_auto_empty: |-
|
224
|
+
Vagrant found a port collision for the specified port and virtual machine.
|
225
|
+
While this port was marked to be auto-corrected, the ports in the
|
226
|
+
auto-correction range are all also used.
|
227
|
+
|
228
|
+
VM: <%= vm_name %>
|
229
|
+
Forwarded port: <%= name %> (<%= options[:guestport] %> => <%= options[:hostport] %>)
|
136
230
|
:vm_port_collision: |-
|
137
231
|
Vagrant cannot forward the specified ports on this VM, since they
|
138
232
|
would collide with another VirtualBox virtual machine's forwarded
|
@@ -163,3 +257,17 @@
|
|
163
257
|
|
164
258
|
If the box was built for 0.2.x and contains a custom public key, perhaps
|
165
259
|
the path to the private key is incorrect. Check your `config.ssh.private_key_path`.
|
260
|
+
|
261
|
+
#---------------------------------------------------------------------
|
262
|
+
# CATEGORY: Error Messages for Linux System
|
263
|
+
#---------------------------------------------------------------------
|
264
|
+
:network_not_debian: |-
|
265
|
+
Host only networking is only supported for Debian/Ubuntu by the built-in
|
266
|
+
"Linux" system. If you're using some other distro and want to implement
|
267
|
+
host only networking, please subclass the `Vagrant::Systems::Linux` class
|
268
|
+
and implement the `prepare_host_only_network` and `enable_host_only_network`
|
269
|
+
methods.
|
270
|
+
|
271
|
+
Otherwise, please report your distro and how to modify network interfaces
|
272
|
+
to the Vagrant mailing list or IRC and we'll probably be glad to add it
|
273
|
+
to the internal systems.
|