diff --git a/cmd/swarm/run_test.go b/cmd/swarm/run_test.go index d9b9ca1eb5..7d70e7aa09 100644 --- a/cmd/swarm/run_test.go +++ b/cmd/swarm/run_test.go @@ -167,31 +167,18 @@ func (c *testCluster) Stop() { } func (c *testCluster) StartNewNodes(t *testing.T, size int) { - c.Nodes = make([]*testNode, 0, size) - - errors := make(chan error, size) - nodes := make(chan *testNode, size) + c.Nodes = make([]*testNode, size) for i := 0; i < size; i++ { - go func(nodeIndex int) { - dir := filepath.Join(c.TmpDir, fmt.Sprintf("swarm%02d", nodeIndex)) - if err := os.Mkdir(dir, 0700); err != nil { - errors <- err - return - } - - node := newTestNode(t, dir) - node.Name = fmt.Sprintf("swarm%02d", nodeIndex) - nodes <- node - }(i) - } + name := fmt.Sprintf("swarm%02d", i) - for i := 0; i < size; i++ { - select { - case node := <-nodes: - c.Nodes = append(c.Nodes, node) - case err := <-errors: - t.Error(err) + dir := filepath.Join(c.TmpDir, name) + if err := os.Mkdir(dir, 0777); err != nil { + t.Fatal(err) } + + node := newTestNode(t, dir) + node.Name = name + c.Nodes[i] = node } if t.Failed() {