small cleanup
This commit is contained in:
@@ -331,19 +331,6 @@ func buildLayersCombo(host *localconfig.Host, cfg *config.Config, signer crypto.
|
||||
|
||||
cmdOut := new(bytes.Buffer)
|
||||
|
||||
run := func(prog string, arg ...string) bool {
|
||||
cmdOut.Reset()
|
||||
|
||||
cmd := exec.Command(prog, arg...)
|
||||
cmd.Stdout = cmdOut // os.Stdout
|
||||
cmd.Stderr = os.Stderr
|
||||
if e := cmd.Run(); e != nil {
|
||||
err = fmt.Errorf("%s %q failed: %w", cmd.Path, cmd.Args, e)
|
||||
return false
|
||||
}
|
||||
return true
|
||||
}
|
||||
|
||||
for i, layer := range layers {
|
||||
if layer == "modules" {
|
||||
continue // modules are in the initrd with boot v2
|
||||
@@ -374,20 +361,20 @@ func buildLayersCombo(host *localconfig.Host, cfg *config.Config, signer crypto.
|
||||
mode = "--create"
|
||||
}
|
||||
|
||||
if !run("tar", mode, "-p", "-f", tmpTar, "-C", mountPoint, ".") {
|
||||
if err = runCmd(cmdOut, "tar", mode, "-p", "-f", tmpTar, "-C", mountPoint, "."); err != nil {
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
fsOut := filepath.Join(workdir, "output.fs")
|
||||
if !run("mkfs.erofs", "-z", "lzma", "-C131072", "-Efragments,ztailpacking",
|
||||
"-T0", "--all-time", "--ignore-mtime", "--tar=f", fsOut, tmpTar) {
|
||||
if err = runCmd(cmdOut, "mkfs.erofs", "-z", "lzma", "-C131072", "-Efragments,ztailpacking",
|
||||
"-T0", "--all-time", "--ignore-mtime", "--tar=f", fsOut, tmpTar); err != nil {
|
||||
return
|
||||
}
|
||||
|
||||
hashOut := filepath.Join(workdir, "output.hash")
|
||||
|
||||
if !run("veritysetup", "format", fsOut, hashOut) {
|
||||
if err = runCmd(cmdOut, "veritysetup", "format", fsOut, hashOut); err != nil {
|
||||
return
|
||||
}
|
||||
|
||||
@@ -490,3 +477,15 @@ func fetchHostLayer(host *localconfig.Host, layer string) (path string, err erro
|
||||
|
||||
return distFetch("layers", layer, layerVersion)
|
||||
}
|
||||
|
||||
func runCmd(cmdOut *bytes.Buffer, prog string, arg ...string) error {
|
||||
cmdOut.Reset()
|
||||
|
||||
cmd := exec.Command(prog, arg...)
|
||||
cmd.Stdout = cmdOut
|
||||
cmd.Stderr = os.Stderr
|
||||
if e := cmd.Run(); e != nil {
|
||||
return fmt.Errorf("%s %q failed: %w", cmd.Path, cmd.Args, e)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user