Skip to content

Commit 68020fd

Browse files
committed
integration: rewrite etcd dumper to use new client
1 parent 563e256 commit 68020fd

File tree

2 files changed

+30
-32
lines changed

2 files changed

+30
-32
lines changed

test/integration/userclient_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -399,7 +399,7 @@ func TestUserInitialization(t *testing.T) {
399399
},
400400
}
401401

402-
oldEtcdClient, err := etcd.MakeNewEtcdClient(masterConfig.EtcdClientInfo)
402+
oldEtcdClient, err := etcd.MakeEtcdClient(masterConfig.EtcdClientInfo)
403403
if err != nil {
404404
t.Fatalf("unexpected error: %v", err)
405405
}

test/util/etcd.go

Lines changed: 29 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,18 @@
11
package util
22

33
import (
4+
"encoding/json"
45
"flag"
5-
"fmt"
6-
"io/ioutil"
7-
"log"
8-
"math/rand"
96
"os"
107
goruntime "runtime"
118
"strings"
129
"testing"
1310

11+
"golang.org/x/net/context"
12+
1413
"github.com/coreos/pkg/capnslog"
1514

16-
newetcdclient "github.com/coreos/etcd/client"
17-
"github.com/coreos/go-etcd/etcd"
15+
etcdclient "github.com/coreos/etcd/client"
1816

1917
"k8s.io/kubernetes/pkg/capabilities"
2018
etcdtest "k8s.io/kubernetes/pkg/storage/etcd/testing"
@@ -46,27 +44,22 @@ func RequireEtcd(t *testing.T) *etcdtest.EtcdTestServer {
4644
return s
4745
}
4846

49-
func NewEtcdClient() *etcd.Client {
50-
etcdServers := []string{GetEtcdURL()}
51-
52-
client := etcd.NewClient(etcdServers)
53-
if err := serveretcd.TestEtcdClient(client); err != nil {
54-
panic(err)
55-
}
47+
func NewEtcdClient() etcdclient.Client {
48+
client, _ := MakeNewEtcdClient()
5649
return client
5750
}
5851

59-
func MakeNewEtcdClient() (newetcdclient.Client, error) {
52+
func MakeNewEtcdClient() (etcdclient.Client, error) {
6053
etcdServers := []string{GetEtcdURL()}
6154

62-
cfg := newetcdclient.Config{
55+
cfg := etcdclient.Config{
6356
Endpoints: etcdServers,
6457
}
65-
client, err := newetcdclient.New(cfg)
58+
client, err := etcdclient.New(cfg)
6659
if err != nil {
6760
return nil, err
6861
}
69-
return client, serveretcd.TestNewEtcdClient(client)
62+
return client, serveretcd.TestEtcdClient(client)
7063
}
7164

7265
func GetEtcdURL() string {
@@ -76,16 +69,6 @@ func GetEtcdURL() string {
7669
return url
7770
}
7871

79-
func logEtcd() {
80-
etcd.SetLogger(log.New(os.Stderr, "go-etcd", log.LstdFlags))
81-
}
82-
83-
func withEtcdKey(f func(string)) {
84-
prefix := fmt.Sprintf("/test-%d", rand.Int63())
85-
defer NewEtcdClient().Delete(prefix, true)
86-
f(prefix)
87-
}
88-
8972
func DumpEtcdOnFailure(t *testing.T) {
9073
if !t.Failed() {
9174
return
@@ -99,16 +82,31 @@ func DumpEtcdOnFailure(t *testing.T) {
9982
last = 0
10083
}
10184
name := f.Name()[last:]
102-
10385
client := NewEtcdClient()
104-
etcdResponse, err := client.RawGet("/", false, true)
86+
keyClient := etcdclient.NewKeysAPI(client)
87+
88+
response, err := keyClient.Get(context.Background(), "/", &etcdclient.GetOptions{Recursive: true, Sort: true})
10589
if err != nil {
10690
t.Logf("error dumping etcd: %v", err)
10791
return
10892
}
93+
jsonResponse, err := json.Marshal(response.Node)
94+
if err != nil {
95+
t.Logf("error encoding etcd dump: %v", err)
96+
return
97+
}
10998

110-
if err := ioutil.WriteFile(GetBaseDir()+"/etcd-dump-"+name+".json", etcdResponse.Body, os.FileMode(0444)); err != nil {
111-
t.Logf("error dumping etcd: %v", err)
99+
t.Logf("dumping etcd to %q", GetBaseDir()+"/etcd-dump-"+name+".json")
100+
dumpFile, err := os.OpenFile(GetBaseDir()+"/etcd-dump-"+name+".json", os.O_WRONLY|os.O_CREATE, 0444)
101+
if err != nil {
102+
t.Logf("error writing etcd dump: %v", err)
112103
return
113104
}
105+
defer dumpFile.Close()
106+
_, err = dumpFile.Write(jsonResponse)
107+
if err != nil {
108+
t.Logf("error writing etcd dump: %v", err)
109+
return
110+
}
111+
114112
}

0 commit comments

Comments
 (0)