github.com/jingruilea/kubeedge@v1.2.0-beta.0.0.20200410162146-4bb8902b3879/cloud/pkg/cloudhub/config/config.go (about) 1 package config 2 3 import ( 4 "io/ioutil" 5 "sync" 6 7 "k8s.io/client-go/tools/cache" 8 "k8s.io/klog" 9 10 "github.com/kubeedge/kubeedge/cloud/pkg/client/clientset/versioned" 11 syncinformer "github.com/kubeedge/kubeedge/cloud/pkg/client/informers/externalversions/reliablesyncs/v1alpha1" 12 synclister "github.com/kubeedge/kubeedge/cloud/pkg/client/listers/reliablesyncs/v1alpha1" 13 "github.com/kubeedge/kubeedge/pkg/apis/componentconfig/cloudcore/v1alpha1" 14 ) 15 16 var Config Configure 17 var once sync.Once 18 19 type Configure struct { 20 v1alpha1.CloudHub 21 KubeAPIConfig *v1alpha1.KubeAPIConfig 22 Ca []byte 23 Cert []byte 24 Key []byte 25 } 26 27 func InitConfigure(hub *v1alpha1.CloudHub, kubeAPIConfig *v1alpha1.KubeAPIConfig) { 28 once.Do(func() { 29 ca, err := ioutil.ReadFile(hub.TLSCAFile) 30 if err != nil { 31 klog.Fatalf("read ca file %v error %v", hub.TLSCAFile, err) 32 } 33 cert, err := ioutil.ReadFile(hub.TLSCertFile) 34 if err != nil { 35 klog.Fatalf("read cert file %v error %v", hub.TLSCertFile, err) 36 } 37 key, err := ioutil.ReadFile(hub.TLSPrivateKeyFile) 38 if err != nil { 39 klog.Fatalf("read key file %v error %v", hub.TLSPrivateKeyFile, err) 40 } 41 Config = Configure{ 42 CloudHub: *hub, 43 KubeAPIConfig: kubeAPIConfig, 44 Ca: ca, 45 Cert: cert, 46 Key: key, 47 } 48 }) 49 } 50 51 // ObjectSyncController use beehive context message layer 52 type ObjectSyncController struct { 53 CrdClient versioned.Interface 54 55 // informer 56 ClusterObjectSyncInformer syncinformer.ClusterObjectSyncInformer 57 ObjectSyncInformer syncinformer.ObjectSyncInformer 58 59 // synced 60 ClusterObjectSyncSynced cache.InformerSynced 61 ObjectSyncSynced cache.InformerSynced 62 63 // lister 64 ClusterObjectSyncLister synclister.ClusterObjectSyncLister 65 ObjectSyncLister synclister.ObjectSyncLister 66 }