Browse Source

[integration-cli] fix windows build test cases

Use the same IP as the DOCKER_HOST when making a remote file server.

Docker-DCO-1.1-Signed-off-by: Josh Hawn <josh.hawn@docker.com> (github: jlhawn)
Josh Hawn 10 năm trước cách đây
mục cha
commit
d06ffd0a5f
1 tập tin đã thay đổi với 17 bổ sung1 xóa
  1. 17 1
      integration-cli/docker_utils.go

+ 17 - 1
integration-cli/docker_utils.go

@@ -877,10 +877,26 @@ COPY . /static`); err != nil {
 		return nil, fmt.Errorf("failed to find container port: err=%v\nout=%s", err, out)
 		return nil, fmt.Errorf("failed to find container port: err=%v\nout=%s", err, out)
 	}
 	}
 
 
+	fileserverHostPort := strings.Trim(out, "\n")
+	_, port, err := net.SplitHostPort(fileserverHostPort)
+	if err != nil {
+		return nil, fmt.Errorf("unable to parse file server host:port: %v", err)
+	}
+
+	dockerHostURL, err := url.Parse(daemonHost())
+	if err != nil {
+		return nil, fmt.Errorf("unable to parse daemon host URL: %v", err)
+	}
+
+	host, _, err := net.SplitHostPort(dockerHostURL.Host)
+	if err != nil {
+		return nil, fmt.Errorf("unable to parse docker daemon host:port: %v", err)
+	}
+
 	return &remoteFileServer{
 	return &remoteFileServer{
 		container: container,
 		container: container,
 		image:     image,
 		image:     image,
-		host:      strings.Trim(out, "\n"),
+		host:      fmt.Sprintf("%s:%s", host, port),
 		ctx:       ctx}, nil
 		ctx:       ctx}, nil
 }
 }