Updating kubernetes proper to use latest etcd client library
This commit is contained in:
@@ -20,8 +20,10 @@ import (
|
||||
"fmt"
|
||||
"math/rand"
|
||||
|
||||
"github.com/coreos/go-etcd/etcd"
|
||||
etcd "github.com/coreos/etcd/client"
|
||||
"github.com/golang/glog"
|
||||
"golang.org/x/net/context"
|
||||
|
||||
"k8s.io/kubernetes/pkg/api/testapi"
|
||||
"k8s.io/kubernetes/pkg/storage"
|
||||
etcdstorage "k8s.io/kubernetes/pkg/storage/etcd"
|
||||
@@ -35,15 +37,22 @@ func init() {
|
||||
RequireEtcd()
|
||||
}
|
||||
|
||||
func NewEtcdClient() *etcd.Client {
|
||||
return etcd.NewClient([]string{})
|
||||
func NewEtcdClient() etcd.Client {
|
||||
cfg := etcd.Config{
|
||||
Endpoints: []string{"http://127.0.0.1:4001"},
|
||||
}
|
||||
client, err := etcd.New(cfg)
|
||||
if err != nil {
|
||||
glog.Fatalf("unable to connect to etcd for testing: %v", err)
|
||||
}
|
||||
return client
|
||||
}
|
||||
|
||||
func NewEtcdStorage() storage.Interface {
|
||||
return etcdstorage.NewEtcdStorage(NewEtcdClient(), testapi.Default.Codec(), etcdtest.PathPrefix())
|
||||
}
|
||||
|
||||
func NewExtensionsEtcdStorage(client *etcd.Client) storage.Interface {
|
||||
func NewExtensionsEtcdStorage(client etcd.Client) storage.Interface {
|
||||
if client == nil {
|
||||
client = NewEtcdClient()
|
||||
}
|
||||
@@ -51,14 +60,14 @@ func NewExtensionsEtcdStorage(client *etcd.Client) storage.Interface {
|
||||
}
|
||||
|
||||
func RequireEtcd() {
|
||||
if _, err := NewEtcdClient().Get("/", false, false); err != nil {
|
||||
if _, err := etcd.NewKeysAPI(NewEtcdClient()).Get(context.TODO(), "/", nil); err != nil {
|
||||
glog.Fatalf("unable to connect to etcd for testing: %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
func WithEtcdKey(f func(string)) {
|
||||
prefix := fmt.Sprintf("/test-%d", rand.Int63())
|
||||
defer NewEtcdClient().Delete(prefix, true)
|
||||
defer etcd.NewKeysAPI(NewEtcdClient()).Delete(context.TODO(), prefix, &etcd.DeleteOptions{Recursive: true})
|
||||
f(prefix)
|
||||
}
|
||||
|
||||
@@ -68,13 +77,13 @@ func WithEtcdKey(f func(string)) {
|
||||
// of the test run.
|
||||
func DeleteAllEtcdKeys() {
|
||||
glog.Infof("Deleting all etcd keys")
|
||||
client := NewEtcdClient()
|
||||
keys, err := client.Get("/", false, false)
|
||||
keysAPI := etcd.NewKeysAPI(NewEtcdClient())
|
||||
keys, err := keysAPI.Get(context.TODO(), "/", nil)
|
||||
if err != nil {
|
||||
glog.Fatalf("Unable to list root etcd keys: %v", err)
|
||||
}
|
||||
for _, node := range keys.Node.Nodes {
|
||||
if _, err := client.Delete(node.Key, true); err != nil {
|
||||
if _, err := keysAPI.Delete(context.TODO(), node.Key, &etcd.DeleteOptions{Recursive: true}); err != nil {
|
||||
glog.Fatalf("Unable delete key: %v", err)
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user