瀏覽代碼

Make Moby command detection (based on help output) more robust. It seems some tabs have been replaced by spaces in CLI 20.10. Covered with e2e test TestUnsupportedCommand.
We need to install docker CLI ourselves in Github actions nodes.

Signed-off-by: Guillaume Tardif <[email protected]>

Guillaume Tardif 5 年之前
父節點
當前提交
f55823b70f
共有 1 個文件被更改,包括 2 次插入4 次删除
  1. 2 4
      cli/mobycli/exec.go

+ 2 - 4
cli/mobycli/exec.go

@@ -22,7 +22,7 @@ import (
 	"os"
 	"os/exec"
 	"os/signal"
-	"strings"
+	"regexp"
 
 	"github.com/spf13/cobra"
 
@@ -112,9 +112,7 @@ func IsDefaultContextCommand(dockerCommand string) bool {
 	if e != nil {
 		fmt.Println(e)
 	}
-	output := string(b)
-	contains := strings.Contains(output, "Usage:\tdocker "+dockerCommand)
-	return contains
+	return regexp.MustCompile("Usage:\\s*docker\\s*" + dockerCommand).Match(b)
 }
 
 // ExecSilent executes a command and do redirect output to stdOut, return output