X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=cmd%2Fappmgr%2Ftypes.go;h=34e3b749f48ec36b6c15ab5e75f807f2cc1d93c4;hb=4021ae6af0b166342a17c2f140fc0b7cc338dea7;hp=243179d025df0b6276eb2c74f3ed13f6e6146b79;hpb=57d2a61e41861321b263fdeff5679671e36143ae;p=ric-plt%2Fappmgr.git diff --git a/cmd/appmgr/types.go b/cmd/appmgr/types.go index 243179d..34e3b74 100755 --- a/cmd/appmgr/types.go +++ b/cmd/appmgr/types.go @@ -38,12 +38,10 @@ type Resource struct { } type Xapp struct { - Name string `json:"name"` - ConfigName string `json:"configName, omitempty"` - Namespace string `json:"namespace, omitempty"` - Status string `json:"status"` - Version string `json:"version"` - Instances []XappInstance `json:"instances"` + Name string `json:"name"` + Status string `json:"status"` + Version string `json:"version"` + Instances []XappInstance `json:"instances"` } type XappInstance struct { @@ -55,19 +53,47 @@ type XappInstance struct { RxMessages []string `json:"rxMessages"` } +type XappDeploy struct { + Name string `json:"name"` + ConfigName string `json:"configName, omitempty"` + Namespace string `json:"namespace, omitempty"` + ServiceName string `json:"serviceName, omitempty"` + ImageRepo string `json:"imageRepo, omitempty"` + Hostname string `json:"hostname, omitempty"` +} + type XappManager struct { router *mux.Router helm Helmer + cm ConfigMapper sd SubscriptionDispatcher opts CmdOptions ready bool } +type ConfigMapper interface { + UploadConfig() (cfg []XAppConfig) + GetConfigMap(m XappDeploy, c *interface{}) (err error) + CreateConfigMap(r XAppConfig) (errList []CMError, err error) + UpdateConfigMap(r XAppConfig) (errList []CMError, err error) + DeleteConfigMap(r XAppConfig) (cm interface{}, err error) + ReadSchema(name string, c *XAppConfig) (err error) + PurgeConfigMap(m XappDeploy) (cm interface{}, err error) + RestoreConfigMap(m XappDeploy, cm interface{}) (err error) + ReadConfigMap(name string, ns string, c *interface{}) (err error) + ApplyConfigMap(r XAppConfig, action string) (err error) + GetMessages(name string) (msgs MessageTypes) + GetNamespace(ns string) string + GetNamesFromHelmRepo() (names []string) +} + type Helmer interface { + SetCM(ConfigMapper) Initialize() - Install(m ConfigMetadata) (xapp Xapp, err error) + Install(m XappDeploy) (xapp Xapp, err error) Status(name string) (xapp Xapp, err error) StatusAll() (xapps []Xapp, err error) + SearchAll() (xapps []string) List() (xapps []string, err error) Delete(name string) (xapp Xapp, err error) } @@ -76,6 +102,7 @@ type Helm struct { host string chartPath string initDone bool + cm ConfigMapper } type SubscriptionReq struct { @@ -96,7 +123,7 @@ type SubscriptionNotif struct { Id string `json:"id"` Version int `json:"version"` EventType string `json:"eventType"` - XappData []Xapp `json:"xapp"` + XApps string `json:"xApps"` } type Subscription struct { @@ -112,8 +139,8 @@ type SubscriptionDispatcher struct { } type MessageTypes struct { - TxMessages []string `yaml:"txMessages"` - RxMessages []string `yaml:"rxMessages"` + TxMessages []string `json:"txMessages"` + RxMessages []string `json:"rxMessages"` } type EventType string