From 8382eb648fe51db07a0a20d413f61d4a46ab6131 Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Mon, 17 Jul 2017 13:55:55 +0200 Subject: pkg/kernel: actually pass cmdline/sysctl files to the build script --- pkg/osutil/osutil.go | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'pkg/osutil') diff --git a/pkg/osutil/osutil.go b/pkg/osutil/osutil.go index 99ab41780..fecb5f95b 100644 --- a/pkg/osutil/osutil.go +++ b/pkg/osutil/osutil.go @@ -21,11 +21,22 @@ const ( // RunCmd runs "bin args..." in dir with timeout and returns its output. func RunCmd(timeout time.Duration, dir, bin string, args ...string) ([]byte, error) { + return runCmd(timeout, nil, dir, bin, args...) +} + +// RunCmdEnv is the same as RunCmd but also appends env. +func RunCmdEnv(timeout time.Duration, env []string, dir, bin string, args ...string) ([]byte, error) { + return runCmd(timeout, env, dir, bin, args...) +} + +func runCmd(timeout time.Duration, env []string, dir, bin string, args ...string) ([]byte, error) { output := new(bytes.Buffer) cmd := exec.Command(bin, args...) cmd.Dir = dir cmd.Stdout = output cmd.Stderr = output + cmd.Env = append([]string{}, os.Environ()...) + cmd.Env = append(cmd.Env, env...) if err := cmd.Start(); err != nil { return nil, fmt.Errorf("failed to start %v %+v: %v", bin, args, err) } -- cgit mrf-deployment