浏览代码

Merge pull request #10320 from milas/e2e-win-pause

test: tweak pause test to try and prevent failures in Windows CI
Guillaume Lours 2 年之前
父节点
当前提交
a99a0b50ef
共有 3 个文件被更改,包括 14 次插入3 次删除
  1. 8 0
      pkg/e2e/fixtures/pause/compose.yaml
  2. 5 2
      pkg/e2e/framework.go
  3. 1 1
      pkg/e2e/pause_test.go

+ 8 - 0
pkg/e2e/fixtures/pause/compose.yaml

@@ -2,8 +2,16 @@ services:
   a:
     image:  nginx:alpine
     ports: [80]
+    healthcheck:
+      test: wget --spider -S -T1 http://localhost:80
+      interval: 1s
+      timeout: 1s
   b:
     image:  nginx:alpine
     ports: [80]
     depends_on:
       - a
+    healthcheck:
+      test: wget --spider -S -T1 http://localhost:80
+      interval: 1s
+      timeout: 1s

+ 5 - 2
pkg/e2e/framework.go

@@ -103,7 +103,7 @@ func NewCLI(t testing.TB, opts ...CLIOption) *CLI {
 	for _, opt := range opts {
 		opt(c)
 	}
-	t.Log(c.RunDockerComposeCmdNoCheck(t, "version").Combined())
+	c.RunDockerComposeCmdNoCheck(t, "version")
 	return c
 }
 
@@ -305,7 +305,10 @@ func (c *CLI) RunDockerComposeCmd(t testing.TB, args ...string) *icmd.Result {
 // RunDockerComposeCmdNoCheck runs a docker compose command, don't presume of any expectation and returns a result
 func (c *CLI) RunDockerComposeCmdNoCheck(t testing.TB, args ...string) *icmd.Result {
 	t.Helper()
-	return icmd.RunCmd(c.NewDockerComposeCmd(t, args...))
+	cmd := c.NewDockerComposeCmd(t, args...)
+	cmd.Stdout = os.Stdout
+	t.Logf("Running command: %s", strings.Join(cmd.Command, " "))
+	return icmd.RunCmd(cmd)
 }
 
 // NewDockerComposeCmd creates a command object for Compose, either in plugin

+ 1 - 1
pkg/e2e/pause_test.go

@@ -101,7 +101,7 @@ func TestPauseServiceAlreadyPaused(t *testing.T) {
 	t.Cleanup(cleanup)
 
 	// launch a and wait for it to come up
-	cli.RunDockerComposeCmd(t, "up", "-d", "a")
+	cli.RunDockerComposeCmd(t, "up", "--wait", "a")
 	HTTPGetWithRetry(t, urlForService(t, cli, "a", 80), http.StatusOK, 50*time.Millisecond, 10*time.Second)
 
 	// pause a twice - first time should pass, second time fail