diff --git a/builder/virtualbox/builder.go b/builder/virtualbox/builder.go index 581b01fb1..05737f244 100644 --- a/builder/virtualbox/builder.go +++ b/builder/virtualbox/builder.go @@ -219,9 +219,11 @@ func (b *Builder) Prepare(raws ...interface{}) error { } } - if _, err := os.Stat(b.config.OutputDir); err == nil { - if !b.config.PackerForce { - errs = append(errs, errors.New("Output directory already exists. It must not exist.")) + if !b.config.PackerForce { + if _, err := os.Stat(b.config.OutputDir); err == nil { + errs = append( + errs, + errors.New("Output directory already exists. It must not exist.")) } } diff --git a/builder/vmware/builder.go b/builder/vmware/builder.go index 60ed66f40..91cc8e0db 100644 --- a/builder/vmware/builder.go +++ b/builder/vmware/builder.go @@ -175,9 +175,11 @@ func (b *Builder) Prepare(raws ...interface{}) error { } } - if _, err := os.Stat(b.config.OutputDir); err == nil { - if !b.config.PackerForce { - errs = append(errs, errors.New("Output directory already exists. It must not exist.")) + if !b.config.PackerForce { + if _, err := os.Stat(b.config.OutputDir); err == nil { + errs = append( + errs, + errors.New("Output directory already exists. It must not exist.")) } } diff --git a/builder/vmware/step_prepare_output_dir.go b/builder/vmware/step_prepare_output_dir.go index 8e3a41350..f773ecf58 100644 --- a/builder/vmware/step_prepare_output_dir.go +++ b/builder/vmware/step_prepare_output_dir.go @@ -15,7 +15,7 @@ func (stepPrepareOutputDir) Run(state map[string]interface{}) multistep.StepActi if _, err := os.Stat(config.OutputDir); err == nil && config.PackerForce { ui.Say("Deleting previous output directory...") os.RemoveAll(config.OutputDir) - } + } if err := os.MkdirAll(config.OutputDir, 0755); err != nil { state["error"] = err