From e450a75be449b36f77594a3aae1c0d534fbb5b5b Mon Sep 17 00:00:00 2001 From: Evan Hazlett Date: Tue, 24 Feb 2015 09:45:44 -0500 Subject: [PATCH] virtualbox: check state before attempting start Signed-off-by: Evan Hazlett --- drivers/virtualbox/virtualbox.go | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/drivers/virtualbox/virtualbox.go b/drivers/virtualbox/virtualbox.go index 2c2e7d33b1..5534f1d6c1 100644 --- a/drivers/virtualbox/virtualbox.go +++ b/drivers/virtualbox/virtualbox.go @@ -339,10 +339,18 @@ func (d *Driver) Create() error { } func (d *Driver) Start() error { - if err := vbm("startvm", d.MachineName, "--type", "headless"); err != nil { + s, err := d.GetState() + if err != nil { return err } - log.Infof("Waiting for VM to start...") + + if s == state.Stopped { + if err := vbm("startvm", d.MachineName, "--type", "headless"); err != nil { + return err + } + log.Infof("Waiting for VM to start...") + } + return ssh.WaitForTCP(fmt.Sprintf("localhost:%d", d.SSHPort)) }