From b84123dcd9fdadae0f4ce26b9d891c03afe7842a Mon Sep 17 00:00:00 2001 From: Mitchell Hashimoto Date: Mon, 14 Jun 2010 13:09:32 -0700 Subject: [PATCH] Provision command checks if VM is created --- lib/vagrant/commands/provision.rb | 2 +- test/vagrant/commands/provision_test.rb | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/lib/vagrant/commands/provision.rb b/lib/vagrant/commands/provision.rb index ddceef8df..88830e2a5 100644 --- a/lib/vagrant/commands/provision.rb +++ b/lib/vagrant/commands/provision.rb @@ -16,7 +16,7 @@ module Vagrant return # for tests end - if vm.vm.running? + if vm.created? && vm.vm.running? vm.provision else vm.env.logger.info "VM '#{name}' not running. Ignoring provision request." diff --git a/test/vagrant/commands/provision_test.rb b/test/vagrant/commands/provision_test.rb index 52062043d..0127d6bcc 100644 --- a/test/vagrant/commands/provision_test.rb +++ b/test/vagrant/commands/provision_test.rb @@ -18,6 +18,7 @@ class CommandsProvisionTest < Test::Unit::TestCase setup do @foo_vm = mock("vm") @foo_vm.stubs(:env).returns(@env) + @foo_vm.stubs(:created?).returns(true) @vm_for_real = mock("vm for real") @foo_vm.stubs(:vm).returns(@vm_for_real) @@ -45,6 +46,15 @@ class CommandsProvisionTest < Test::Unit::TestCase @foo_vm.expects(:provision).never @instance.execute(["foo"]) end + + should "do log to info if it's not created" do + logger = mock("logger") + logger.expects(:info) + @env.stubs(:logger).returns(logger) + @foo_vm.stubs(:created?).returns(false) + @foo_vm.expects(:provision).never + @instance.execute(["foo"]) + end end end