/
githubmirror
/
dive
Обзор
Документация
Войти
/
githubmirror
/
dive
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
v0.2.0
utils/docker.go
45 строк
880 B
Alex Goodman
discover docker version automatically (fixes #47)
01 ноя 2018, 07:02
Не верифицирован
01 ноя 2018, 07:02
82014bc
Код
Авторство
О чём код?
package utils import ( "bytes" "os" "os/exec" "strings" ) // RunDockerCmd runs a given Docker command in the current tty func RunDockerCmd(cmdStr string, args ...string) error { allArgs := cleanArgs(append([]string{cmdStr}, args...)) cmd := exec.Command("docker", allArgs...) cmd.Stdout = os.Stdout cmd.Stderr = os.Stderr cmd.Stdin = os.Stdin return cmd.Run() } // cleanArgs trims the whitespace from the given set of strings. func cleanArgs(s []string) []string { var r []string for _, str := range s { if str != "" { r = append(r, strings.Trim(str, " ")) } } return r } func DiscoverDockerVersion() string { cmd := exec.Command("docker", "version", "--format", "{{.Server.APIVersion}}") cmdOutput := &bytes.Buffer{} cmd.Stdout = cmdOutput err := cmd.Run() if err != nil { panic(err) } return strings.TrimSpace(string(cmdOutput.Bytes())) }