From c3ca14616139978527d6b1e55133c423df250b11 Mon Sep 17 00:00:00 2001 From: Michael Vogt Date: Fri, 7 Mar 2025 13:55:28 +0100 Subject: [PATCH] main: fix creating output dir for `--with-buildlog` Trivial fix for the missing `mkdir()` call when `--with-buildlog` is specified (and the matching test update). --- cmd/image-builder/build.go | 5 ++++- cmd/image-builder/main_test.go | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/cmd/image-builder/build.go b/cmd/image-builder/build.go index bddc9ad..f644fb8 100644 --- a/cmd/image-builder/build.go +++ b/cmd/image-builder/build.go @@ -37,10 +37,13 @@ func buildImage(pbar progress.ProgressBar, res *imagefilter.Result, osbuildManif OutputDir: opts.OutputDir, } if opts.WriteBuildlog { + if err := os.MkdirAll(opts.OutputDir, 0755); err != nil { + return fmt.Errorf("cannot create buildlog base directory: %w", err) + } p := filepath.Join(opts.OutputDir, fmt.Sprintf("%s.buildlog", outputNameFor(res))) f, err := os.Create(p) if err != nil { - return err + return fmt.Errorf("cannot create buildlog: %w", err) } defer f.Close() diff --git a/cmd/image-builder/main_test.go b/cmd/image-builder/main_test.go index aa00a62..ad78377 100644 --- a/cmd/image-builder/main_test.go +++ b/cmd/image-builder/main_test.go @@ -401,7 +401,7 @@ func TestBuildIntegrationArgs(t *testing.T) { }, } { t.Run(strings.Join(tc.args, ","), func(t *testing.T) { - outputDir := t.TempDir() + outputDir := filepath.Join(t.TempDir(), "output") cmd := []string{ "build",