From d3829af9e487dc0a33ff7c1caf7f79ddfcabe32f Mon Sep 17 00:00:00 2001 From: Clayton Craft Date: Tue, 17 Aug 2021 23:05:16 -0700 Subject: [PATCH] main: use a temporary work dir for writing archives into post-processing/installation will be handled by an external app, so use a temp work dir for the external app to work out of when it is invoked --- main.go | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/main.go b/main.go index 0d24566..8bfcc6a 100644 --- a/main.go +++ b/main.go @@ -52,14 +52,21 @@ func main() { log.Fatal(err) } + // temporary working dir + workDir, err := ioutil.TempDir("", "mkinitfs") + if err != nil { + log.Fatal("Unable to create temporary work directory:", err) + } + defer os.RemoveAll(workDir) + log.Print("Generating for kernel version: ", kernVer) log.Print("Output directory: ", outDir) - if err := generateInitfs("initramfs", outDir, kernVer, devinfo); err != nil { + if err := generateInitfs("initramfs", workDir, kernVer, devinfo); err != nil { log.Fatal(err) } - if err := generateInitfsExtra("initramfs-extra", outDir, devinfo); err != nil { + if err := generateInitfsExtra("initramfs-extra", workDir, devinfo); err != nil { log.Fatal(err) } @@ -482,7 +489,6 @@ func getKernelVersion() (string, error) { return strings.TrimSpace(string(contents)), nil } - func generateInitfs(name string, path string, kernVer string, devinfo deviceinfo.DeviceInfo) error { initfsArchive, err := archive.New() if err != nil {