From 520fac2eba9009b7029ff3641bf88235a05b1eab Mon Sep 17 00:00:00 2001 From: Vasiliy Tolstov Date: Sat, 2 Jul 2016 18:17:39 +0300 Subject: [PATCH] post-processor/checksum: create dir for output file Signed-off-by: Vasiliy Tolstov --- post-processor/checksum/post-processor.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/post-processor/checksum/post-processor.go b/post-processor/checksum/post-processor.go index 55ea28ad8..8bfa589d4 100644 --- a/post-processor/checksum/post-processor.go +++ b/post-processor/checksum/post-processor.go @@ -103,7 +103,9 @@ func (p *PostProcessor) PostProcess(ui packer.Ui, artifact packer.Artifact) (pac if _, err := os.Stat(checksumFile); err != nil { newartifact.files = append(newartifact.files, checksumFile) } - + if err := os.MkdirAll(filepath.Dir(checksumFile), os.FileMode(0755)); err != nil { + return nil, false, fmt.Errorf("unable to create dir: %s", err.Error()) + } fw, err := os.OpenFile(checksumFile, os.O_WRONLY|os.O_APPEND|os.O_CREATE, os.FileMode(0644)) if err != nil { return nil, false, fmt.Errorf("unable to create file %s: %s", checksumFile, err.Error())