Skip to content

Commit

Permalink
Merge pull request kubernetes#2279 from brendandburns/integration
Browse files Browse the repository at this point in the history
Added some etcd retries to try to work around some flakes we see in Travis
  • Loading branch information
lavalamp committed Nov 12, 2014
2 parents 0090c85 + bcec212 commit 1be56fa
Showing 1 changed file with 21 additions and 7 deletions.
28 changes: 21 additions & 7 deletions cmd/integration/integration.go
Original file line number Diff line number Diff line change
Expand Up @@ -110,14 +110,28 @@ func startComponents(manifestURL string) (apiServerURL string) {
apiServer := httptest.NewServer(&handler)

etcdClient := etcd.NewClient(servers)
keys, err := etcdClient.Get("/", false, false)
if err != nil {
glog.Fatalf("Unable to list root etcd keys: %v", err)
}
for _, node := range keys.Node.Nodes {
if _, err := etcdClient.Delete(node.Key, true); err != nil {
glog.Fatalf("Unable delete key: %v", err)
sleep := 4 * time.Second
ok := false
for i := 0; i < 3; i++ {
keys, err := etcdClient.Get("/", false, false)
if err != nil {
glog.Warningf("Unable to list root etcd keys: %v", err)
if i < 2 {
time.Sleep(sleep)
sleep = sleep * sleep
}
continue
}
for _, node := range keys.Node.Nodes {
if _, err := etcdClient.Delete(node.Key, true); err != nil {
glog.Fatalf("Unable delete key: %v", err)
}
}
ok = true
break
}
if !ok {
glog.Fatalf("Failed to connect to etcd")
}

cl := client.NewOrDie(&client.Config{Host: apiServer.URL, Version: testapi.Version()})
Expand Down

0 comments on commit 1be56fa

Please sign in to comment.