瀏覽代碼

Merge pull request #35173 from tophj-ibm/fix-raft-quorum-test

[integration-cli] fix flaky raft test
Yong Tang 7 年之前
父節點
當前提交
dc74e31bb2
共有 1 個文件被更改,包括 6 次插入2 次删除
  1. 6 2
      integration-cli/docker_api_swarm_test.go

+ 6 - 2
integration-cli/docker_api_swarm_test.go

@@ -370,8 +370,12 @@ func (s *DockerSwarmSuite) TestAPISwarmRaftQuorum(c *check.C) {
 	cli, err := d1.NewClient()
 	c.Assert(err, checker.IsNil)
 	defer cli.Close()
-	_, err = cli.ServiceCreate(context.Background(), service.Spec, types.ServiceCreateOptions{})
-	c.Assert(err.Error(), checker.Contains, "deadline exceeded")
+
+	// d1 will eventually step down from leader because there is no longer an active quorum, wait for that to happen
+	waitAndAssert(c, defaultReconciliationTimeout, func(c *check.C) (interface{}, check.CommentInterface) {
+		_, err = cli.ServiceCreate(context.Background(), service.Spec, types.ServiceCreateOptions{})
+		return err.Error(), nil
+	}, checker.Contains, "Make sure more than half of the managers are online.")
 
 	d2.Start(c)