Validate only certain command sequences [closes GH-188]
This commit is contained in:
parent
92c37f7435
commit
39407694e3
|
@ -1,5 +1,6 @@
|
||||||
## 0.6.6 (unreleased)
|
## 0.6.6 (unreleased)
|
||||||
|
|
||||||
|
- Conditional validation of Vagrantfile so that some commands don't validate. [GH-188]
|
||||||
- Fix "junk" output for ssh-config. [GH-189]
|
- Fix "junk" output for ssh-config. [GH-189]
|
||||||
- Fix port collision handling with greater than two VMs. [GH-185]
|
- Fix port collision handling with greater than two VMs. [GH-185]
|
||||||
- Fix potential infinite loop with root path if bad CWD is given to environment.
|
- Fix potential infinite loop with root path if bad CWD is given to environment.
|
||||||
|
|
|
@ -100,7 +100,7 @@ module Vagrant
|
||||||
action_environment.merge!(options || {})
|
action_environment.merge!(options || {})
|
||||||
|
|
||||||
# Run the before action run callback, if we're not doing that already
|
# Run the before action run callback, if we're not doing that already
|
||||||
run(:before_action_run) if callable_id != :before_action_run
|
run(:before_action_run, action_environment) if callable_id != :before_action_run
|
||||||
|
|
||||||
# Run the action chain in a busy block, marking the environment as
|
# Run the action chain in a busy block, marking the environment as
|
||||||
# interrupted if a SIGINT occurs, and exiting cleanly once the
|
# interrupted if a SIGINT occurs, and exiting cleanly once the
|
||||||
|
|
|
@ -58,17 +58,17 @@ module Vagrant
|
||||||
# is kicked out to the `box_add` registered middleware.
|
# is kicked out to the `box_add` registered middleware.
|
||||||
def add
|
def add
|
||||||
raise Errors::BoxAlreadyExists.new(:name => name) if File.directory?(directory)
|
raise Errors::BoxAlreadyExists.new(:name => name) if File.directory?(directory)
|
||||||
env.actions.run(:box_add, { "box" => self })
|
env.actions.run(:box_add, { "box" => self, "validate" => false })
|
||||||
end
|
end
|
||||||
|
|
||||||
# Begins the process of destroying this box. This cannot be undone!
|
# Begins the process of destroying this box. This cannot be undone!
|
||||||
def destroy
|
def destroy
|
||||||
env.actions.run(:box_remove, { "box" => self })
|
env.actions.run(:box_remove, { "box" => self, "validate" => false })
|
||||||
end
|
end
|
||||||
|
|
||||||
# Begins sequence to repackage this box.
|
# Begins sequence to repackage this box.
|
||||||
def repackage(options=nil)
|
def repackage(options=nil)
|
||||||
env.actions.run(:box_repackage, { "box" => self }.merge(options || {}))
|
env.actions.run(:box_repackage, { "box" => self, "validate" => false }.merge(options || {}))
|
||||||
end
|
end
|
||||||
|
|
||||||
# Returns the directory to the location of this boxes content in the local
|
# Returns the directory to the location of this boxes content in the local
|
||||||
|
|
|
@ -108,7 +108,7 @@ module Vagrant
|
||||||
end
|
end
|
||||||
|
|
||||||
def package(options=nil)
|
def package(options=nil)
|
||||||
env.actions.run(:package, options)
|
env.actions.run(:package, { "validate" => false }.merge(options || {}))
|
||||||
end
|
end
|
||||||
|
|
||||||
def up(options=nil)
|
def up(options=nil)
|
||||||
|
|
|
@ -36,7 +36,7 @@ class BoxTest < Test::Unit::TestCase
|
||||||
end
|
end
|
||||||
|
|
||||||
should "execute the Add action when add is called" do
|
should "execute the Add action when add is called" do
|
||||||
@box.env.actions.expects(:run).with(:box_add, { "box" => @box })
|
@box.env.actions.expects(:run).with(:box_add, { "box" => @box, "validate" => false })
|
||||||
@box.add
|
@box.add
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -48,19 +48,19 @@ class BoxTest < Test::Unit::TestCase
|
||||||
|
|
||||||
context "destroying" do
|
context "destroying" do
|
||||||
should "execute the destroy action" do
|
should "execute the destroy action" do
|
||||||
@box.env.actions.expects(:run).with(:box_remove, { "box" => @box })
|
@box.env.actions.expects(:run).with(:box_remove, { "box" => @box, "validate" => false })
|
||||||
@box.destroy
|
@box.destroy
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
context "repackaging" do
|
context "repackaging" do
|
||||||
should "execute the repackage action" do
|
should "execute the repackage action" do
|
||||||
@box.env.actions.expects(:run).with(:box_repackage, { "box" => @box })
|
@box.env.actions.expects(:run).with(:box_repackage, { "box" => @box, "validate" => false })
|
||||||
@box.repackage
|
@box.repackage
|
||||||
end
|
end
|
||||||
|
|
||||||
should "forward given options into the action" do
|
should "forward given options into the action" do
|
||||||
@box.env.actions.expects(:run).with(:box_repackage, { "box" => @box, "foo" => "bar" })
|
@box.env.actions.expects(:run).with(:box_repackage, { "box" => @box, "foo" => "bar", "validate" => false })
|
||||||
@box.repackage("foo" => "bar")
|
@box.repackage("foo" => "bar")
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -358,7 +358,6 @@ class EnvironmentTest < Test::Unit::TestCase
|
||||||
call_seq = sequence("call_sequence")
|
call_seq = sequence("call_sequence")
|
||||||
@klass.expects(:check_virtualbox!).once.in_sequence(call_seq)
|
@klass.expects(:check_virtualbox!).once.in_sequence(call_seq)
|
||||||
env.expects(:load_config!).once.in_sequence(call_seq)
|
env.expects(:load_config!).once.in_sequence(call_seq)
|
||||||
env.actions.expects(:run).with(:environment_load).once.in_sequence(call_seq)
|
|
||||||
assert_equal env, env.load!
|
assert_equal env, env.load!
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -165,7 +165,12 @@ class VMTest < Test::Unit::TestCase
|
||||||
|
|
||||||
context "packaging" do
|
context "packaging" do
|
||||||
should "execute the package action" do
|
should "execute the package action" do
|
||||||
@vm.env.actions.expects(:run).with(:package, :foo => :bar).once
|
@vm.env.actions.expects(:run).once.with() do |action, options|
|
||||||
|
assert_equal :package, action
|
||||||
|
assert_equal :bar, options[:foo]
|
||||||
|
true
|
||||||
|
end
|
||||||
|
|
||||||
@vm.package(:foo => :bar)
|
@vm.package(:foo => :bar)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue