diff --git a/command/hcl2_upgrade.go b/command/hcl2_upgrade.go index c8a906f68..5e0a8b1a3 100644 --- a/command/hcl2_upgrade.go +++ b/command/hcl2_upgrade.go @@ -133,7 +133,7 @@ type BlockParser interface { func (c *HCL2UpgradeCommand) RunContext(_ context.Context, cla *HCL2UpgradeArgs) int { var output io.Writer - if err := os.MkdirAll(filepath.Dir(cla.OutputFile), 0); err != nil { + if err := os.MkdirAll(filepath.Dir(cla.OutputFile), 0755); err != nil { c.Ui.Error(fmt.Sprintf("Failed to create output directory: %v", err)) return 1 } diff --git a/provisioner/file/provisioner_test.go b/provisioner/file/provisioner_test.go index 428443bdc..a8cb9de5b 100644 --- a/provisioner/file/provisioner_test.go +++ b/provisioner/file/provisioner_test.go @@ -340,6 +340,14 @@ func TestProvisionerProvision_DownloadsMultipleFilesToFolder(t *testing.T) { "direction": "download", } + // Cleaning up destination directory + cwd, err := os.Getwd() + if err != nil { + t.Fatalf("Failed getting current working directory") + } + destinationDir := filepath.Join(cwd, "something") + defer os.RemoveAll(destinationDir) + if err := p.Prepare(config); err != nil { t.Fatalf("err: %s", err) }