feat: config.
This commit is contained in:
42
remoteconfig/kubernetes/watcher_test.go
Normal file
42
remoteconfig/kubernetes/watcher_test.go
Normal file
@@ -0,0 +1,42 @@
|
||||
package kubernetes
|
||||
|
||||
import (
|
||||
"context"
|
||||
"path/filepath"
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
"k8s.io/client-go/kubernetes"
|
||||
"k8s.io/client-go/tools/clientcmd"
|
||||
"k8s.io/client-go/util/homedir"
|
||||
)
|
||||
|
||||
func TestKube(t *testing.T) {
|
||||
home := homedir.HomeDir()
|
||||
config, err := clientcmd.BuildConfigFromFlags("", filepath.Join(home, ".kube", "config"))
|
||||
if err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
client, err := kubernetes.NewForConfig(config)
|
||||
if err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
cmWatcher, err := client.CoreV1().ConfigMaps("mesh").Watch(context.Background(), metav1.ListOptions{
|
||||
LabelSelector: "app=test",
|
||||
// FieldSelector: "",
|
||||
})
|
||||
if err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
go func() {
|
||||
time.Sleep(5 * time.Second)
|
||||
cmWatcher.Stop()
|
||||
}()
|
||||
for c := range cmWatcher.ResultChan() {
|
||||
if c.Object == nil {
|
||||
return
|
||||
}
|
||||
t.Log(c.Type, c.Object)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user