Просмотр исходного кода

Merge pull request #11739 from milas/fix-e2e-cascade-flaky

chore(e2e): fix flaky cascade failure test
Guillaume Lours 1 год назад
Родитель
Сommit
b53b8b24f1
2 измененных файлов с 17 добавлено и 3 удалено
  1. 5 2
      pkg/e2e/cascade_test.go
  2. 12 1
      pkg/e2e/fixtures/cascade/compose.yaml

+ 5 - 2
pkg/e2e/cascade_test.go

@@ -36,6 +36,8 @@ func TestCascadeStop(t *testing.T) {
 	res := c.RunDockerComposeCmd(t, "-f", "./fixtures/cascade/compose.yaml", "--project-name", projectName,
 		"up", "--abort-on-container-exit")
 	assert.Assert(t, strings.Contains(res.Combined(), "exit-1 exited with code 0"), res.Combined())
+	// no --exit-code-from, so this is not an error
+	assert.Equal(t, res.ExitCode, 0)
 }
 
 func TestCascadeFail(t *testing.T) {
@@ -48,6 +50,7 @@ func TestCascadeFail(t *testing.T) {
 	res := c.RunDockerComposeCmdNoCheck(t, "-f", "./fixtures/cascade/compose.yaml", "--project-name", projectName,
 		"up", "--abort-on-container-failure")
 	assert.Assert(t, strings.Contains(res.Combined(), "exit-1 exited with code 0"), res.Combined())
-	assert.Assert(t, strings.Contains(res.Combined(), "fail-1 exited with code 1"), res.Combined())
-	assert.Equal(t, res.ExitCode, 1)
+	assert.Assert(t, strings.Contains(res.Combined(), "fail-1 exited with code 111"), res.Combined())
+	// failing exit code should be propagated
+	assert.Equal(t, res.ExitCode, 111)
 }

+ 12 - 1
pkg/e2e/fixtures/cascade/compose.yaml

@@ -1,8 +1,19 @@
 services:
+  running:
+    image: alpine
+    command: sleep infinity
+    init: true
+
   exit:
     image: alpine
     command: /bin/true
+    depends_on:
+      running:
+        condition: service_started
 
   fail:
     image: alpine
-    command: sh -c "sleep 0.1 && /bin/false"
+    command: sh -c "return 111"
+    depends_on:
+      exit:
+        condition: service_completed_successfully