integcli: add getContainerCount utility function

Docker-DCO-1.1-Signed-off-by: Cristian Staretu <cristian.staretu@gmail.com> (github: unclejack)
This commit is contained in:
unclejack 2014-05-19 19:47:35 +03:00
parent 667e2bd4ea
commit 77f5425260
1 changed files with 26 additions and 0 deletions

View File

@ -3,6 +3,7 @@ package main
import (
"fmt"
"os/exec"
"strconv"
"strings"
"testing"
)
@ -71,3 +72,28 @@ func findContainerIp(t *testing.T, id string) string {
return strings.Trim(out, " \r\n'")
}
func getContainerCount() (int, error) {
const containers = "Containers:"
cmd := exec.Command(dockerBinary, "info")
out, _, err := runCommandWithOutput(cmd)
if err != nil {
return 0, err
}
lines := strings.Split(out, "\n")
for _, line := range lines {
if strings.Contains(line, containers) {
output := stripTrailingCharacters(line)
output = strings.TrimLeft(output, containers)
output = strings.Trim(output, " ")
containerCount, err := strconv.Atoi(output)
if err != nil {
return 0, err
}
return containerCount, nil
}
}
return 0, fmt.Errorf("couldn't find the Container count in the output")
}