Browse Source

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 years ago
parent
commit
f55823b70f
1 changed files with 2 additions and 4 deletions
  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