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
This commit is contained in:
Clayton Craft
2021-08-17 23:05:16 -07:00
parent 0643ae37b2
commit d3829af9e4

12
main.go
View File

@@ -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 {