From 9f34ff6f6a6ea1d384528a093bad1c72bd2cea89 Mon Sep 17 00:00:00 2001 From: Lucas Di Pentima Date: Thu, 16 Mar 2017 16:16:34 -0300 Subject: [PATCH 1/1] 10218: Use a []string for the entire command instead of splitting it. --- services/crunch-run/crunchrun.go | 38 +++++++++++++++++--------------- 1 file changed, 20 insertions(+), 18 deletions(-) diff --git a/services/crunch-run/crunchrun.go b/services/crunch-run/crunchrun.go index 9ca4f80462..44d68ca0a3 100644 --- a/services/crunch-run/crunchrun.go +++ b/services/crunch-run/crunchrun.go @@ -509,18 +509,8 @@ func (runner *ContainerRunner) StartCrunchstat() { } type infoCommand struct { - label string - command string - args []string -} - -func newInfoCommand(label string, command string) infoCommand { - cmd := strings.Split(command, " ") - return infoCommand{ - label: label, - command: cmd[0], - args: cmd[1:], - } + label string + cmd []string } // Gather node information and store it on the log for debugging @@ -530,19 +520,31 @@ func (runner *ContainerRunner) LogNodeInfo() (err error) { logger := log.New(w, "node-info", 0) commands := []infoCommand{ - newInfoCommand("Host Information", "uname -a"), - newInfoCommand("CPU Information", "cat /proc/cpuinfo"), - newInfoCommand("Memory Information", "cat /proc/meminfo"), - newInfoCommand("Disk Space", "df -m"), + infoCommand{ + label: "Host Information", + cmd: []string{"uname", "-a"}, + }, + infoCommand{ + label: "CPU Information", + cmd: []string{"cat", "/proc/cpuinfo"}, + }, + infoCommand{ + label: "Memory Information", + cmd: []string{"cat", "/proc/meminfo"}, + }, + infoCommand{ + label: "Disk Space", + cmd: []string{"df", "-m"}, + }, } // Run commands with informational output to be logged. var out []byte for _, command := range commands { - out, err = exec.Command(command.command, command.args...).Output() + out, err = exec.Command(command.cmd[0], command.cmd[1:]...).Output() if err != nil { return fmt.Errorf("While running command '%s': %v", - command.command, err) + command.cmd[0], err) } logger.Println(command.label) for _, line := range strings.Split(string(out), "\n") { -- 2.30.2