builder/vmware: more resilient to racing deletes [GH-675]
This commit is contained in:
parent
b79506e623
commit
6211cd2028
|
@ -18,6 +18,8 @@ BUG FIXES:
|
|||
so that building AMIs works out of us-east-1 [GH-679]
|
||||
* builder/vmware: Cleanup of VMX keys works properly so cd-rom won't
|
||||
get stuck with ISO. [GH-685]
|
||||
* builder/vmware: File cleanup is more resilient to file delete races
|
||||
with the operating system. [GH-675]
|
||||
|
||||
## 0.4.0 (November 19, 2013)
|
||||
|
||||
|
|
|
@ -4,6 +4,7 @@ import (
|
|||
"fmt"
|
||||
"github.com/mitchellh/multistep"
|
||||
"github.com/mitchellh/packer/packer"
|
||||
"os"
|
||||
"path/filepath"
|
||||
)
|
||||
|
||||
|
@ -48,11 +49,14 @@ func (stepCleanFiles) Run(state multistep.StateBag) multistep.StepAction {
|
|||
if !keep {
|
||||
ui.Message(fmt.Sprintf("Deleting: %s", path))
|
||||
if err = dir.Remove(path); err != nil {
|
||||
// Only report the error if the file still exists
|
||||
if _, serr := os.Stat(path); serr == nil || os.IsNotExist(serr) {
|
||||
state.Put("error", err)
|
||||
return multistep.ActionHalt
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return multistep.ActionContinue
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue