X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=cmd%2Fappmgr%2Fdesc.go;h=ac1d0c832c65d7af976d93072b1181735285cc52;hb=059775ccd9e7c5482747729890800f7a7d507a94;hp=2f55460590e38d2de024804835775e3067d77c60;hpb=27ba444c3b55176ca4d9e6ed7a9a2ff99a4e9e5c;p=ric-plt%2Fappmgr.git diff --git a/cmd/appmgr/desc.go b/cmd/appmgr/desc.go index 2f55460..ac1d0c8 100755 --- a/cmd/appmgr/desc.go +++ b/cmd/appmgr/desc.go @@ -24,6 +24,7 @@ import ( "errors" "fmt" "github.com/spf13/viper" + "github.com/valyala/fastjson" "github.com/xeipuuv/gojsonschema" "io/ioutil" "log" @@ -134,7 +135,7 @@ func (cm *ConfigMap) ApplyConfigMap(r XAppConfig, action string) (err error) { Data: r.Configuration, } - cmJson, err := json.Marshal(c) + cmJson, err := json.Marshal(c.Data) if err != nil { log.Println("Config marshalling failed: ", err) return @@ -158,6 +159,13 @@ func (cm *ConfigMap) ApplyConfigMap(r XAppConfig, action string) (err error) { return } +func (cm *ConfigMap) GetConfigMap(m XappDeploy, c *interface{}) (err error) { + if m.ConfigName == "" { + m.ConfigName = m.Name + "-appconfig" + } + return cm.ReadConfigMap(m.ConfigName, m.Namespace, c) +} + func (cm *ConfigMap) CreateConfigMap(r XAppConfig) (errList []CMError, err error) { if errList, err = cm.Validate(r); err != nil { return @@ -282,5 +290,26 @@ func (cm *ConfigMap) FetchChart(name string) (err error) { func (cm *ConfigMap) GetMessages(name string) (msgs MessageTypes) { log.Println("Fetching tx/rx messages for: ", name) + + args := fmt.Sprintf("get configmap -o jsonpath='{.data.config-file\\.json}' -n ricxapp %s-appconfig", name) + out, err := KubectlExec(args) + if err != nil { + return + } + + var p fastjson.Parser + v, err := p.Parse(string(out)) + if err != nil { + log.Printf("fastjson.Parser for '%s' failed: %v", name, err) + return + } + + for _, m := range v.GetArray("rmr", "txMessages") { + msgs.TxMessages = append(msgs.TxMessages, strings.Trim(m.String(), `"`)) + } + for _, m := range v.GetArray("rmr", "rxMessages") { + msgs.RxMessages = append(msgs.RxMessages, strings.Trim(m.String(), `"`)) + } + return }