Merge "Adding Cluster Role for RIC"
authorThoralf Czichy <thoralf.czichy@nokia.com>
Thu, 7 Dec 2023 09:39:04 +0000 (09:39 +0000)
committerGerrit Code Review <gerrit@o-ran-sc.org>
Thu, 7 Dec 2023 09:39:04 +0000 (09:39 +0000)
depRicKubernetesOperator/internal/controller/getConfigmap.go
depRicKubernetesOperator/internal/controller/getIngress.go
depRicKubernetesOperator/internal/controller/getRole.go
depRicKubernetesOperator/internal/controller/getRoleBinding.go
depRicKubernetesOperator/internal/controller/getSecret.go
depRicKubernetesOperator/internal/controller/getServiceAccount.go
depRicKubernetesOperator/internal/controller/getServices.go

index af56cd3..8e0b67f 100644 (file)
@@ -264,6 +264,64 @@ func GetConfigMap() []*corev1.ConfigMap {
                },\r
        }\r
 \r
+       configMap10 := &corev1.ConfigMap{\r
+               Data: map[string]string{\r
+                       "DBAAS_NODE_COUNT":   "1",\r
+                       "DBAAS_SERVICE_HOST": "service-ricplt-dbaas-tcp.ricplt",\r
+                       "DBAAS_SERVICE_PORT": "6379",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "configmap-ricplt-dbaas-appconfig",\r
+                       Namespace: "ricplt",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "ConfigMap",\r
+               },\r
+       }\r
+\r
+       configMap11 := &corev1.ConfigMap{\r
+               Data: map[string]string{\r
+                       "DBAAS_NODE_COUNT":   "1",\r
+                       "DBAAS_SERVICE_HOST": "service-ricplt-dbaas-tcp.ricplt",\r
+                       "DBAAS_SERVICE_PORT": "6379",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "dbaas-appconfig",\r
+                       Namespace: "ricxapp",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "ConfigMap",\r
+               },\r
+       }\r
+\r
+       configMap12 := &corev1.ConfigMap{\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "ConfigMap",\r
+               },\r
+               Data: map[string]string{\r
+                       "redis.conf": "dir \"/data\"\n" +\r
+                               "appendonly no\n" +\r
+                               "bind 0.0.0.0\n" +\r
+                               "loadmodule /usr/local/libexec/redismodule/libredismodule.so\n" +\r
+                               "protected-mode no\n" +\r
+                               "save\n" +\r
+                               "",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Namespace: "ricplt",\r
+                       Labels: map[string]string{\r
+                               "app":      "ricplt-dbaas",\r
+                               "chart":    "dbaas-2.0.0",\r
+                               "heritage": "Helm",\r
+                               "release":  "release-name",\r
+                       },\r
+                       Name: "configmap-ricplt-dbaas-config",\r
+               },\r
+       }\r
+\r
        configMap13 := &corev1.ConfigMap{\r
                Data: map[string]string{\r
                        "rmr_verbose": "0\n" +\r
@@ -451,6 +509,1253 @@ func GetConfigMap() []*corev1.ConfigMap {
                },\r
        }\r
 \r
+       configMap20 := &corev1.ConfigMap{\r
+               Data: map[string]string{\r
+                       "servers.conf": "# Prometheus metrics and health-checking server\n" +\r
+                               "server {\n" +\r
+                               "    server_name kong_prometheus_exporter;\n" +\r
+                               "    listen 0.0.0.0:9542; # can be any other port as well\n" +\r
+                               "    access_log off;\n" +\r
+                               "    location /status {\n" +\r
+                               "        default_type text/plain;\n" +\r
+                               "        return 200;\n" +\r
+                               "    }\n" +\r
+                               "    location /metrics {\n" +\r
+                               "        default_type text/plain;\n" +\r
+                               "        content_by_lua_block {\n" +\r
+                               "             local prometheus = require \"kong.plugins.prometheus.exporter\"\n" +\r
+                               "             prometheus:collect()\n" +\r
+                               "        }\n" +\r
+                               "    }\n" +\r
+                               "    location /nginx_status {\n" +\r
+                               "        internal;\n" +\r
+                               "        access_log off;\n" +\r
+                               "        stub_status;\n" +\r
+                               "    }\n" +\r
+                               "}\n" +\r
+                               "",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Labels: map[string]string{\r
+                               "app.kubernetes.io/name":       "kong",\r
+                               "app.kubernetes.io/version":    "1.4",\r
+                               "helm.sh/chart":                "kong-0.36.6",\r
+                               "app.kubernetes.io/instance":   "release-name",\r
+                               "app.kubernetes.io/managed-by": "Helm",\r
+                       },\r
+                       Name: "release-name-kong-default-custom-server-blocks",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "ConfigMap",\r
+               },\r
+       }\r
+\r
+       configMap21 := &corev1.ConfigMap{\r
+               Data: map[string]string{\r
+                       "TRACING_JAEGER_LOG_LEVEL":     "error",\r
+                       "TRACING_JAEGER_SAMPLER_PARAM": "1",\r
+                       "TRACING_JAEGER_SAMPLER_TYPE":  "const",\r
+                       "TRACING_ENABLED":              "0",\r
+                       "TRACING_JAEGER_AGENT_ADDR":    "service-ricplt-jaegeradapter-agent.ricplt",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Namespace: "ricplt",\r
+                       Name:      "configmap-ricplt-jaegeradapter",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       Kind:       "ConfigMap",\r
+                       APIVersion: "v1",\r
+               },\r
+       }\r
+\r
+       configMap22 := &corev1.ConfigMap{\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "ConfigMap",\r
+               },\r
+               Data: map[string]string{\r
+                       "servers.conf": "# Prometheus metrics and health-checking server\n" +\r
+                               "server {\n" +\r
+                               "    server_name kong_prometheus_exporter;\n" +\r
+                               "    listen 0.0.0.0:9542; # can be any other port as well\n" +\r
+                               "    access_log off;\n" +\r
+                               "    location /status {\n" +\r
+                               "        default_type text/plain;\n" +\r
+                               "        return 200;\n" +\r
+                               "    }\n" +\r
+                               "    location /metrics {\n" +\r
+                               "        default_type text/plain;\n" +\r
+                               "        content_by_lua_block {\n" +\r
+                               "             local prometheus = require \"kong.plugins.prometheus.exporter\"\n" +\r
+                               "             prometheus:collect()\n" +\r
+                               "        }\n" +\r
+                               "    }\n" +\r
+                               "    location /nginx_status {\n" +\r
+                               "        internal;\n" +\r
+                               "        access_log off;\n" +\r
+                               "        stub_status;\n" +\r
+                               "    }\n" +\r
+                               "}\n" +\r
+                               "",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Labels: map[string]string{\r
+                               "app.kubernetes.io/version":    "1.4",\r
+                               "helm.sh/chart":                "kong-0.36.6",\r
+                               "app.kubernetes.io/instance":   "release-name",\r
+                               "app.kubernetes.io/managed-by": "Helm",\r
+                               "app.kubernetes.io/name":       "kong",\r
+                       },\r
+                       Name: "release-name-kong-default-custom-server-blocks",\r
+               },\r
+       }\r
+\r
+       configMap23 := &corev1.ConfigMap{\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "ConfigMap",\r
+               },\r
+               Data: map[string]string{\r
+                       "config-file.json": "{\n" +\r
+                               "    \"local\": {\n" +\r
+                               "        \"host\": \":8080\"\n" +\r
+                               "    },\n" +\r
+                               "    \"logger\": {\n" +\r
+                               "        \"level\": 4\n" +\r
+                               "    },\n" +\r
+                               "    \"db\": {\n" +\r
+                               "        \"namespaces\": [\"sdl\", \"rnib\"]\n" +\r
+                               "    },\n" +\r
+                               "    \"rmr\": {\n" +\r
+                               "        \"protPort\": \"tcp:4560\",\n" +\r
+                               "        \"maxSize\": 65536,\n" +\r
+                               "        \"numWorkers\": 1\n" +\r
+                               "    },\n" +\r
+                               "    \"sbi\": {\n" +\r
+                               "        \"appmgrAddr\": \"service-ricplt-appmgr-http:8080\",\n" +\r
+                               "        \"alertmgrAddr\": \"r4-infrastructure-prometheus-alertmanager:80\",\n" +\r
+                               "        \"timeout\": 30\n" +\r
+                               "    },\n" +\r
+                               "    \"nbi\": {\n" +\r
+                               "        \"schemas\": [\"o-ran-sc-ric-xapp-desc-v1\", \"o-ran-sc-ric-ueec-config-v1\"]\n" +\r
+                               "    },\n" +\r
+                               "    \"controls\": {\n" +\r
+                               "        \"active\": true\n" +\r
+                               "    }\n" +\r
+                               "}\n" +\r
+                               "\n" +\r
+                               "",\r
+                       "uta_rtg.rt": "newrt|start\n" +\r
+                               "rte|13111|127.0.0.1:4588\n" +\r
+                               "rte|13111|127.0.0.1:4560\n" +\r
+                               "newrt|end\n" +\r
+                               "",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "configmap-ricplt-o1mediator-appconfig-configmap",\r
+                       Namespace: "ricplt",\r
+               },\r
+       }\r
+\r
+       configMap24 := &corev1.ConfigMap{\r
+               Data: map[string]string{\r
+                       "RMR_SEED_RT": "/etc/o1agent/uta_rtg.rt",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name: "configmap-ricplt-o1mediator-env",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       Kind:       "ConfigMap",\r
+                       APIVersion: "v1",\r
+               },\r
+       }\r
+\r
+       configMap25 := &corev1.ConfigMap{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Labels: map[string]string{\r
+                               "chart":     "prometheus-11.3.0",\r
+                               "component": "alertmanager",\r
+                               "heritage":  "Helm",\r
+                               "release":   "release-name",\r
+                               "app":       "prometheus",\r
+                       },\r
+                       Name:      "release-name-prometheus-alertmanager",\r
+                       Namespace: "ricplt",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "ConfigMap",\r
+               },\r
+               Data: map[string]string{\r
+                       "alertmanager.yml": "global:\n" +\r
+                               "  resolve_timeout: 5m\n" +\r
+                               "receivers:\n" +\r
+                               "- name: vespa\n" +\r
+                               "  webhook_configs:\n" +\r
+                               "  - url: http://service-ricplt-vespamgr-http:9095/alerts\n" +\r
+                               "route:\n" +\r
+                               "  group_by:\n" +\r
+                               "  - alertname\n" +\r
+                               "  - severity\n" +\r
+                               "  - instance\n" +\r
+                               "  - job\n" +\r
+                               "  group_interval: 3m\n" +\r
+                               "  group_wait: 5s\n" +\r
+                               "  receiver: vespa\n" +\r
+                               "  repeat_interval: 1h\n" +\r
+                               "  routes:\n" +\r
+                               "  - continue: true\n" +\r
+                               "    receiver: vespa\n" +\r
+                               "",\r
+               },\r
+       }\r
+\r
+       configMap26 := &corev1.ConfigMap{\r
+               Data: map[string]string{\r
+                       "alerting_rules.yml": "{}\n" +\r
+                               "",\r
+                       "alerts": "{}\n" +\r
+                               "",\r
+                       "prometheus.yml": "global:\n" +\r
+                               "  evaluation_interval: 1m\n" +\r
+                               "  scrape_interval: 1m\n" +\r
+                               "  scrape_timeout: 10s\n" +\r
+                               "rule_files:\n" +\r
+                               "- /etc/config/recording_rules.yml\n" +\r
+                               "- /etc/config/alerting_rules.yml\n" +\r
+                               "- /etc/config/rules\n" +\r
+                               "- /etc/config/alerts\n" +\r
+                               "scrape_configs:\n" +\r
+                               "- job_name: prometheus\n" +\r
+                               "  static_configs:\n" +\r
+                               "  - targets:\n" +\r
+                               "    - localhost:9090\n" +\r
+                               "- bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token\n" +\r
+                               "  job_name: kubernetes-apiservers\n" +\r
+                               "  kubernetes_sd_configs:\n" +\r
+                               "  - role: endpoints\n" +\r
+                               "  relabel_configs:\n" +\r
+                               "  - action: keep\n" +\r
+                               "    regex: default;kubernetes;https\n" +\r
+                               "    source_labels:\n" +\r
+                               "    - __meta_kubernetes_namespace\n" +\r
+                               "    - __meta_kubernetes_service_name\n" +\r
+                               "    - __meta_kubernetes_endpoint_port_name\n" +\r
+                               "  scheme: https\n" +\r
+                               "  tls_config:\n" +\r
+                               "    ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt\n" +\r
+                               "    insecure_skip_verify: true\n" +\r
+                               "- bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token\n" +\r
+                               "  job_name: kubernetes-nodes\n" +\r
+                               "  kubernetes_sd_configs:\n" +\r
+                               "  - role: node\n" +\r
+                               "  relabel_configs:\n" +\r
+                               "  - action: labelmap\n" +\r
+                               "    regex: __meta_kubernetes_node_label_(.+)\n" +\r
+                               "  - replacement: kubernetes.default.svc:443\n" +\r
+                               "    target_label: __address__\n" +\r
+                               "  - regex: (.+)\n" +\r
+                               "    replacement: /api/v1/nodes/$1/proxy/metrics\n" +\r
+                               "    source_labels:\n" +\r
+                               "    - __meta_kubernetes_node_name\n" +\r
+                               "    target_label: __metrics_path__\n" +\r
+                               "  scheme: https\n" +\r
+                               "  tls_config:\n" +\r
+                               "    ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt\n" +\r
+                               "    insecure_skip_verify: true\n" +\r
+                               "- bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token\n" +\r
+                               "  job_name: kubernetes-nodes-cadvisor\n" +\r
+                               "  kubernetes_sd_configs:\n" +\r
+                               "  - role: node\n" +\r
+                               "  relabel_configs:\n" +\r
+                               "  - action: labelmap\n" +\r
+                               "    regex: __meta_kubernetes_node_label_(.+)\n" +\r
+                               "  - replacement: kubernetes.default.svc:443\n" +\r
+                               "    target_label: __address__\n" +\r
+                               "  - regex: (.+)\n" +\r
+                               "    replacement: /api/v1/nodes/$1/proxy/metrics/cadvisor\n" +\r
+                               "    source_labels:\n" +\r
+                               "    - __meta_kubernetes_node_name\n" +\r
+                               "    target_label: __metrics_path__\n" +\r
+                               "  scheme: https\n" +\r
+                               "  tls_config:\n" +\r
+                               "    ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt\n" +\r
+                               "    insecure_skip_verify: true\n" +\r
+                               "- job_name: kubernetes-service-endpoints\n" +\r
+                               "  kubernetes_sd_configs:\n" +\r
+                               "  - role: endpoints\n" +\r
+                               "  relabel_configs:\n" +\r
+                               "  - action: keep\n" +\r
+                               "    regex: true\n" +\r
+                               "    source_labels:\n" +\r
+                               "    - __meta_kubernetes_service_annotation_prometheus_io_scrape\n" +\r
+                               "  - action: replace\n" +\r
+                               "    regex: (https?)\n" +\r
+                               "    source_labels:\n" +\r
+                               "    - __meta_kubernetes_service_annotation_prometheus_io_scheme\n" +\r
+                               "    target_label: __scheme__\n" +\r
+                               "  - action: replace\n" +\r
+                               "    regex: (.+)\n" +\r
+                               "    source_labels:\n" +\r
+                               "    - __meta_kubernetes_service_annotation_prometheus_io_path\n" +\r
+                               "    target_label: __metrics_path__\n" +\r
+                               "  - action: replace\n" +\r
+                               "    regex: ([^:]+)(?::\\d+)?;(\\d+)\n" +\r
+                               "    replacement: $1:$2\n" +\r
+                               "    source_labels:\n" +\r
+                               "    - __address__\n" +\r
+                               "    - __meta_kubernetes_service_annotation_prometheus_io_port\n" +\r
+                               "    target_label: __address__\n" +\r
+                               "  - action: labelmap\n" +\r
+                               "    regex: __meta_kubernetes_service_label_(.+)\n" +\r
+                               "  - action: replace\n" +\r
+                               "    source_labels:\n" +\r
+                               "    - __meta_kubernetes_namespace\n" +\r
+                               "    target_label: kubernetes_namespace\n" +\r
+                               "  - action: replace\n" +\r
+                               "    source_labels:\n" +\r
+                               "    - __meta_kubernetes_service_name\n" +\r
+                               "    target_label: kubernetes_name\n" +\r
+                               "  - action: replace\n" +\r
+                               "    source_labels:\n" +\r
+                               "    - __meta_kubernetes_pod_node_name\n" +\r
+                               "    target_label: kubernetes_node\n" +\r
+                               "- job_name: kubernetes-service-endpoints-slow\n" +\r
+                               "  kubernetes_sd_configs:\n" +\r
+                               "  - role: endpoints\n" +\r
+                               "  relabel_configs:\n" +\r
+                               "  - action: keep\n" +\r
+                               "    regex: true\n" +\r
+                               "    source_labels:\n" +\r
+                               "    - __meta_kubernetes_service_annotation_prometheus_io_scrape_slow\n" +\r
+                               "  - action: replace\n" +\r
+                               "    regex: (https?)\n" +\r
+                               "    source_labels:\n" +\r
+                               "    - __meta_kubernetes_service_annotation_prometheus_io_scheme\n" +\r
+                               "    target_label: __scheme__\n" +\r
+                               "  - action: replace\n" +\r
+                               "    regex: (.+)\n" +\r
+                               "    source_labels:\n" +\r
+                               "    - __meta_kubernetes_service_annotation_prometheus_io_path\n" +\r
+                               "    target_label: __metrics_path__\n" +\r
+                               "  - action: replace\n" +\r
+                               "    regex: ([^:]+)(?::\\d+)?;(\\d+)\n" +\r
+                               "    replacement: $1:$2\n" +\r
+                               "    source_labels:\n" +\r
+                               "    - __address__\n" +\r
+                               "    - __meta_kubernetes_service_annotation_prometheus_io_port\n" +\r
+                               "    target_label: __address__\n" +\r
+                               "  - action: labelmap\n" +\r
+                               "    regex: __meta_kubernetes_service_label_(.+)\n" +\r
+                               "  - action: replace\n" +\r
+                               "    source_labels:\n" +\r
+                               "    - __meta_kubernetes_namespace\n" +\r
+                               "    target_label: kubernetes_namespace\n" +\r
+                               "  - action: replace\n" +\r
+                               "    source_labels:\n" +\r
+                               "    - __meta_kubernetes_service_name\n" +\r
+                               "    target_label: kubernetes_name\n" +\r
+                               "  - action: replace\n" +\r
+                               "    source_labels:\n" +\r
+                               "    - __meta_kubernetes_pod_node_name\n" +\r
+                               "    target_label: kubernetes_node\n" +\r
+                               "  scrape_interval: 5m\n" +\r
+                               "  scrape_timeout: 30s\n" +\r
+                               "- honor_labels: true\n" +\r
+                               "  job_name: prometheus-pushgateway\n" +\r
+                               "  kubernetes_sd_configs:\n" +\r
+                               "  - role: service\n" +\r
+                               "  relabel_configs:\n" +\r
+                               "  - action: keep\n" +\r
+                               "    regex: pushgateway\n" +\r
+                               "    source_labels:\n" +\r
+                               "    - __meta_kubernetes_service_annotation_prometheus_io_probe\n" +\r
+                               "- job_name: kubernetes-services\n" +\r
+                               "  kubernetes_sd_configs:\n" +\r
+                               "  - role: service\n" +\r
+                               "  metrics_path: /probe\n" +\r
+                               "  params:\n" +\r
+                               "    module:\n" +\r
+                               "    - http_2xx\n" +\r
+                               "  relabel_configs:\n" +\r
+                               "  - action: keep\n" +\r
+                               "    regex: true\n" +\r
+                               "    source_labels:\n" +\r
+                               "    - __meta_kubernetes_service_annotation_prometheus_io_probe\n" +\r
+                               "  - source_labels:\n" +\r
+                               "    - __address__\n" +\r
+                               "    target_label: __param_target\n" +\r
+                               "  - replacement: blackbox\n" +\r
+                               "    target_label: __address__\n" +\r
+                               "  - source_labels:\n" +\r
+                               "    - __param_target\n" +\r
+                               "    target_label: instance\n" +\r
+                               "  - action: labelmap\n" +\r
+                               "    regex: __meta_kubernetes_service_label_(.+)\n" +\r
+                               "  - source_labels:\n" +\r
+                               "    - __meta_kubernetes_namespace\n" +\r
+                               "    target_label: kubernetes_namespace\n" +\r
+                               "  - source_labels:\n" +\r
+                               "    - __meta_kubernetes_service_name\n" +\r
+                               "    target_label: kubernetes_name\n" +\r
+                               "- job_name: kubernetes-pods\n" +\r
+                               "  kubernetes_sd_configs:\n" +\r
+                               "  - role: pod\n" +\r
+                               "  relabel_configs:\n" +\r
+                               "  - action: keep\n" +\r
+                               "    regex: true\n" +\r
+                               "    source_labels:\n" +\r
+                               "    - __meta_kubernetes_pod_annotation_prometheus_io_scrape\n" +\r
+                               "  - action: replace\n" +\r
+                               "    regex: (.+)\n" +\r
+                               "    source_labels:\n" +\r
+                               "    - __meta_kubernetes_pod_annotation_prometheus_io_path\n" +\r
+                               "    target_label: __metrics_path__\n" +\r
+                               "  - action: replace\n" +\r
+                               "    regex: ([^:]+)(?::\\d+)?;(\\d+)\n" +\r
+                               "    replacement: $1:$2\n" +\r
+                               "    source_labels:\n" +\r
+                               "    - __address__\n" +\r
+                               "    - __meta_kubernetes_pod_annotation_prometheus_io_port\n" +\r
+                               "    target_label: __address__\n" +\r
+                               "  - action: labelmap\n" +\r
+                               "    regex: __meta_kubernetes_pod_label_(.+)\n" +\r
+                               "  - action: replace\n" +\r
+                               "    source_labels:\n" +\r
+                               "    - __meta_kubernetes_namespace\n" +\r
+                               "    target_label: kubernetes_namespace\n" +\r
+                               "  - action: replace\n" +\r
+                               "    source_labels:\n" +\r
+                               "    - __meta_kubernetes_pod_name\n" +\r
+                               "    target_label: kubernetes_pod_name\n" +\r
+                               "- job_name: kubernetes-pods-slow\n" +\r
+                               "  kubernetes_sd_configs:\n" +\r
+                               "  - role: pod\n" +\r
+                               "  relabel_configs:\n" +\r
+                               "  - action: keep\n" +\r
+                               "    regex: true\n" +\r
+                               "    source_labels:\n" +\r
+                               "    - __meta_kubernetes_pod_annotation_prometheus_io_scrape_slow\n" +\r
+                               "  - action: replace\n" +\r
+                               "    regex: (.+)\n" +\r
+                               "    source_labels:\n" +\r
+                               "    - __meta_kubernetes_pod_annotation_prometheus_io_path\n" +\r
+                               "    target_label: __metrics_path__\n" +\r
+                               "  - action: replace\n" +\r
+                               "    regex: ([^:]+)(?::\\d+)?;(\\d+)\n" +\r
+                               "    replacement: $1:$2\n" +\r
+                               "    source_labels:\n" +\r
+                               "    - __address__\n" +\r
+                               "    - __meta_kubernetes_pod_annotation_prometheus_io_port\n" +\r
+                               "    target_label: __address__\n" +\r
+                               "  - action: labelmap\n" +\r
+                               "    regex: __meta_kubernetes_pod_label_(.+)\n" +\r
+                               "  - action: replace\n" +\r
+                               "    source_labels:\n" +\r
+                               "    - __meta_kubernetes_namespace\n" +\r
+                               "    target_label: kubernetes_namespace\n" +\r
+                               "  - action: replace\n" +\r
+                               "    source_labels:\n" +\r
+                               "    - __meta_kubernetes_pod_name\n" +\r
+                               "    target_label: kubernetes_pod_name\n" +\r
+                               "  scrape_interval: 5m\n" +\r
+                               "  scrape_timeout: 30s\n" +\r
+                               "alerting:\n" +\r
+                               "  alertmanagers:\n" +\r
+                               "  - kubernetes_sd_configs:\n" +\r
+                               "      - role: pod\n" +\r
+                               "    tls_config:\n" +\r
+                               "      ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt\n" +\r
+                               "    bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token\n" +\r
+                               "    relabel_configs:\n" +\r
+                               "    - source_labels: [__meta_kubernetes_namespace]\n" +\r
+                               "      regex: ricplt\n" +\r
+                               "      action: keep\n" +\r
+                               "    - source_labels: [__meta_kubernetes_pod_label_app]\n" +\r
+                               "      regex: prometheus\n" +\r
+                               "      action: keep\n" +\r
+                               "    - source_labels: [__meta_kubernetes_pod_label_component]\n" +\r
+                               "      regex: alertmanager\n" +\r
+                               "      action: keep\n" +\r
+                               "    - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_probe]\n" +\r
+                               "      regex: .*\n" +\r
+                               "      action: keep\n" +\r
+                               "    - source_labels: [__meta_kubernetes_pod_container_port_number]\n" +\r
+                               "      regex:\n" +\r
+                               "      action: drop\n" +\r
+                               "",\r
+                       "recording_rules.yml": "{}\n" +\r
+                               "",\r
+                       "rules": "{}\n" +\r
+                               "",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Namespace: "ricplt",\r
+                       Labels: map[string]string{\r
+                               "chart":     "prometheus-11.3.0",\r
+                               "component": "server",\r
+                               "heritage":  "Helm",\r
+                               "release":   "release-name",\r
+                               "app":       "prometheus",\r
+                       },\r
+                       Name: "release-name-prometheus-server",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "ConfigMap",\r
+               },\r
+       }\r
+\r
+       configMap27 := &corev1.ConfigMap{\r
+               Data: map[string]string{\r
+                       "update-node.sh": "#!/bin/sh\n" +\r
+                               "REDIS_NODES=\"/data/nodes.conf\"\n" +\r
+                               "sed -i -e \"/myself/ s/[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}/${POD_IP}/\" ${REDIS_NODES}\n" +\r
+                               "exec \"$@\"\n" +\r
+                               "",\r
+                       "redis.conf": "cluster-enabled yes\n" +\r
+                               "cluster-require-full-coverage no\n" +\r
+                               "cluster-node-timeout 15000\n" +\r
+                               "cluster-config-file /data/nodes.conf\n" +\r
+                               "cluster-migration-barrier 1\n" +\r
+                               "appendonly yes\n" +\r
+                               "protected-mode no",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name: "redis-cluster-cm",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "ConfigMap",\r
+               },\r
+       }\r
+\r
+       configMap28 := &corev1.ConfigMap{\r
+               TypeMeta: metav1.TypeMeta{\r
+                       Kind:       "ConfigMap",\r
+                       APIVersion: "v1",\r
+               },\r
+               Data: map[string]string{\r
+                       "placenode.pl": "#!/usr/bin/env perl\n" +\r
+                               "=head\n" +\r
+                               "============LICENSE_START=======================================================\n" +\r
+                               "\n" +\r
+                               "================================================================================\n" +\r
+                               "Copyright (C) 2020 Hcl Technologies Limited.\n" +\r
+                               "================================================================================\n" +\r
+                               "Licensed under the Apache License, Version 2.0 (the \"License\");\n" +\r
+                               "you may not use this file except in compliance with the License.\n" +\r
+                               "You may obtain a copy of the License at\n" +\r
+                               "\n" +\r
+                               "     http://www.apache.org/licenses/LICENSE-2.0\n" +\r
+                               "\n" +\r
+                               "Unless required by applicable law or agreed to in writing, software\n" +\r
+                               "distributed under the License is distributed on an \"AS IS\" BASIS,\n" +\r
+                               "WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n" +\r
+                               "See the License for the specific language governing permissions and\n" +\r
+                               "limitations under the License.\n" +\r
+                               "============LICENSE_END=========================================================\n" +\r
+                               "\n" +\r
+                               "\n" +\r
+                               "About:\n" +\r
+                               "\n" +\r
+                               "This script has been developed as part of https://jira.o-ran-sc.org/browse/RIC-360\n" +\r
+                               "This script identifies the missing anti-affinity(as per above ticket) of redis instances \n" +\r
+                               "required in a redis-cluster. If there is an  undesired  anti-affinity this script can  be \n" +\r
+                               "executed to communicate to redis nodes  to switch roles (e.g. master/slave) such that the \n" +\r
+                               "end-state meets the desired anti-affinity.\n" +\r
+                               "       \n" +\r
+                               "\n" +\r
+                               "Pre-requisites: \n" +\r
+                               "\n" +\r
+                               "  1) A redis cluster with 3 masters (2 replicas each) deployed on kubernetes 1.18 (or later) \n" +\r
+                               "  2) Three available worker nodes for serving redis workloads\n" +\r
+                               "  3) kubectl (with access to the k8 cluster)\n" +\r
+                               "\n" +\r
+                               "=cut\n" +\r
+                               "\n" +\r
+                               "\n" +\r
+                               "my $podRow = { \n" +\r
+                               "\"podIP\"      => \"\",\n" +\r
+                               "\"podName\"    => \"\",\n" +\r
+                               "\"k8Node\"     => \"\",\n" +\r
+                               "\n" +\r
+                               "\"rdNodeRole\" => \"\",\n" +\r
+                               "\"rdNodeID\"   => \"\",\n" +\r
+                               "\n" +\r
+                               "\"rdMasterNodeID\"   => \"\",\n" +\r
+                               "\"slaveIPs\"    => [] \n" +\r
+                               "};\n" +\r
+                               "\n" +\r
+                               "# Pod label for redis nodes\n" +\r
+                               "my $podLabel = $ENV{'POD_LABEL'};\n" +\r
+                               "\n" +\r
+                               "my $podTable =   [];\n" +\r
+                               "my $k8NodeInfo = [];\n" +\r
+                               "\n" +\r
+                               "setk8NodesInfo();\n" +\r
+                               "validate();\n" +\r
+                               "\n" +\r
+                               "# Master\n" +\r
+                               "spreadMastersIfRequired();\n" +\r
+                               "# Slave\n" +\r
+                               "my $disparity = getSlaveDisparity();\n" +\r
+                               "spreadSlavesIfRequired();\n" +\r
+                               "\n" +\r
+                               "sub validate() {\n" +\r
+                               "    my @masters = map { $_->{'rdNodeRole'} eq 'master' ? $_ : () } @{$podTable};\n" +\r
+                               "       if ( @masters > @{$k8NodeInfo->{allk8Nodes}} ) {\n" +\r
+                               "               print \"Info: Skipping any action as num of master > number of k8 nodes..\\n\";\n" +\r
+                               "           exit;\n" +\r
+                               "       }\n" +\r
+                               "}\n" +\r
+                               "\n" +\r
+                               "\n" +\r
+                               "sub spreadSlavesIfRequired() {\n" +\r
+                               "    \n" +\r
+                               "\n" +\r
+                               "       # Get node with maximum disparity first\n" +\r
+                               "    my @disparityMatrix = reverse sort { @{$a} <=> @{$b} } @${disparity}; \n" +\r
+                               "    #@disparityMatrix = grep defined, @disparityMatrix;\n" +\r
+                               "    #@disparityMatrix = map { defined $_ ? $_ : () } @disparityMatrix;\n" +\r
+                               "\n" +\r
+                               "    # Get list of slaves to be swapped roles.\n" +\r
+                               "    my @slaveSwapList = ();\n" +\r
+                               "    my $maxDisparityPerNode = @{$disparityMatrix[0]};\n" +\r
+                               "\n" +\r
+                               "    for (my $disparityPass=0; $disparityPass < $maxDisparityPerNode; $disparityPass++) {\n" +\r
+                               "        for (my $k8NodeIndex=0; $k8NodeIndex <= $#{disparityMatrix}; $k8NodeIndex++) {\n" +\r
+                               "                  #print \"$disparityMatrix[$disparityPass] && $disparityMatrix[$k8NodeIndex][$disparityPass]\";\n" +\r
+                               "           if ( $disparityMatrix[$disparityPass] && $disparityMatrix[$k8NodeIndex][$disparityPass] ) {\n" +\r
+                               "                           push(@slaveSwapList,$disparityMatrix[$k8NodeIndex][$disparityPass]);\n" +\r
+                               "                  }\n" +\r
+                               "        }\n" +\r
+                               "    }\n" +\r
+                               "    if ( ! @slaveSwapList ) {\n" +\r
+                               "       print \"Info: No disparity found with slaves.\\n\" if ( @slaveSwapList < 2);\n" +\r
+                               "               exit;\n" +\r
+                               "       } elsif ( @slaveSwapList == 1 ) {\n" +\r
+                               "       print \"Info: single host scenario (with no swap candidate in other k8 nodes) found.\\n\";\n" +\r
+                               "               exit;\n" +\r
+                               "       } else {\n" +\r
+                               "       print \"Info: slave disparity found.\\n\";\n" +\r
+                               "    }\n" +\r
+                               "\n" +\r
+                               "       # Swap slaves \n" +\r
+                               "       for (my $swapIndex=0; $swapIndex < @slaveSwapList; $swapIndex++) {\n" +\r
+                               "               $pod1 = $slaveSwapList[$swapIndex];\n" +\r
+                               "               $pod2 = $slaveSwapList[++$swapIndex];\n" +\r
+                               "               #print \"Info: Swapping Slaves: \" . join($pod1->{podName}, $pod2->{podName}) . \"\\n\";\n" +\r
+                               "               \n" +\r
+                               "               my $cmd1 = qq[kubectl exec -it ].\n" +\r
+                               "                                  qq[$pod1->{podName}  -- redis-cli -p 6379 cluster replicate $pod2->{rdMasterNodeID} ];\n" +\r
+                               "               \n" +\r
+                               "               my $cmd2 = qq[kubectl exec -it ].\n" +\r
+                               "                                  qq[$pod2->{podName}  -- redis-cli -p 6379 cluster replicate $pod1->{rdMasterNodeID} ];\n" +\r
+                               "\n" +\r
+                               "           runRediClusterCmd($cmd1);\n" +\r
+                               "           runRediClusterCmd($cmd2);\n" +\r
+                               "               #print \"\\n$cmd1\";\n" +\r
+                               "               #print \"\\n$cmd2\\n\";\n" +\r
+                               "    }\n" +\r
+                               "\n" +\r
+                               "}\n" +\r
+                               "\n" +\r
+                               "\n" +\r
+                               "sub getSlaveDisparity() {\n" +\r
+                               "\n" +\r
+                               "    # Get Slave Disparity Metrix\n" +\r
+                               "    my $disparity = ();\n" +\r
+                               "    my $nodeIndex = 0;\n" +\r
+                               "    foreach my $k8NodeName ( @{$k8NodeInfo->{allk8Nodes}} ) {\n" +\r
+                               "        my @redisNodesOnk8Node = map { $_->{'k8Node'} eq $k8NodeName ? $_ : () } @{$podTable};\n" +\r
+                               "        @redisNodesOnk8Node    = sort { $a->{\"rdNodeRole\"} cmp $b->{\"rdNodeRole\"} } @redisNodesOnk8Node;\n" +\r
+                               "\n" +\r
+                               "        my $master = shift @redisNodesOnk8Node;\n" +\r
+                               "        \n" +\r
+                               "        for (my $index=0; $index <= $#{redisNodesOnk8Node}; $index++ ) {\n" +\r
+                               "            my $slave = $redisNodesOnk8Node[$index];\n" +\r
+                               "            #print \"chekcing for pod:  $slave->{podName}\\n\";\n" +\r
+                               "            my $disparityFound = 0;\n" +\r
+                               "            if ( $slave->{rdMasterNodeID} eq $master->{rdNodeID} ) {\n" +\r
+                               "               $disparityFound = 1;\n" +\r
+                               "            } else {\n" +\r
+                               "               #check is other slaves are its sibling\n" +\r
+                               "               for (my $nextIndex=$index + 1; $nextIndex <= $#{redisNodesOnk8Node}; $nextIndex++ ) {\n" +\r
+                               "                   if ( $slave->{rdMasterNodeID} eq $redisNodesOnk8Node[$nextIndex]->{rdMasterNodeID} ) {\n" +\r
+                               "                          $disparityFound = 1;\n" +\r
+                               "                       break;\n" +\r
+                               "                   }\n" +\r
+                               "               }\n" +\r
+                               "            }\n" +\r
+                               "                       if ($disparityFound) {\n" +\r
+                               "               #$disparity[$nodeIndex][$index] = { 'podName' => $slave->{\"podName\"}, 'rdMasterNodeID' => $slave->{\"rdMasterNodeID\"} } ;\n" +\r
+                               "               push(@{$disparity[$nodeIndex]},{ 'podName' => $slave->{\"podName\"}, 'rdMasterNodeID' => $slave->{\"rdMasterNodeID\"} } ) ;\n" +\r
+                               "                       }\n" +\r
+                               "        }\n" +\r
+                               "        $nodeIndex++;\n" +\r
+                               "    }\n" +\r
+                               "        return \\@disparity;\n" +\r
+                               "}\n" +\r
+                               "\n" +\r
+                               "sub spreadMastersIfRequired() {\n" +\r
+                               "\n" +\r
+                               "   NODE_WITH_NO_MASTER: foreach my $nodeWithoutMaster (@{$k8NodeInfo->{k8NodesWithoutMaster}}) {\n" +\r
+                               "      # For each k8Node without any master \n" +\r
+                               "      #    Check for each extra master on its hostNode\n" +\r
+                               "      #        Find its slave on the this hostNode (i.e. without any master) \n" +\r
+                               "      # Such slave must be Found for 3x3 set-up:\n" +\r
+                               "      # Then Promote as master # Re-Evaluate\n" +\r
+                               "\n" +\r
+                               "      # Get All Redis Slaves on This k8 node\n" +\r
+                               "      print \"Info: K8 node without any master : $nodeWithoutMaster\\n\";\n" +\r
+                               "      my @rdSlaveNodes =  map { ($_->{'k8Node'} eq $nodeWithoutMaster ) && ($_->{'rdNodeRole'} eq 'slave') ? $_ : () } @{$podTable};\n" +\r
+                               "\n" +\r
+                               "           foreach my $nodeWithExtraMaster (@{$k8NodeInfo->{k8NodesWithExtraMaster}} ) {\n" +\r
+                               "              print \"Info: k8 Node with extra master : $nodeWithExtraMaster\\n\";\n" +\r
+                               "              #my @rdSlaveNodes =  map { ($_->{'k8Node'} eq $nodeWithoutMaster ) && ($_->{'rdNodeRole'} eq 'slave') ? $_ : () } @{$podTable};\n" +\r
+                               "\n" +\r
+                               "              my @masterInstances = map { ($_->{'k8Node'} eq $nodeWithExtraMaster ) && ($_->{'rdNodeRole'} eq 'master') ? $_ : () } @{$podTable};        \n" +\r
+                               "              foreach my $master (@masterInstances) {\n" +\r
+                               "                  my @slave = map { $_->{\"rdMasterNodeID\"} eq $master->{rdNodeID} ? $_ : () } @rdSlaveNodes;\n" +\r
+                               "                  if ( @slave ) {\n" +\r
+                               "                      promoteSlaveAsMaster($slave[0]);\n" +\r
+                               "                                         my $isPromoted = 0;\n" +\r
+                               "                                     my $slaveNodeID= $slave[0]->{rdNodeID};\n" +\r
+                               "                                         while( ! $isPromoted ) {\n" +\r
+                               "                                                sleep(8);\n" +\r
+                               "                                            setk8NodesInfo();\n" +\r
+                               "                                                my ($promotedNode) = map { $slaveNodeID eq $_->{rdNodeID} ? $_ : () } @{$podTable};\n" +\r
+                               "\n" +\r
+                               "                                                if ( $promotedNode->{'rdNodeRole'} ne 'master' ) {\n" +\r
+                               "                                                       print (\"Info: Waiting for node promotion confirmation..\\n\");\n" +\r
+                               "                                                } else {\n" +\r
+                               "                                                       $isPromoted = 1;\n" +\r
+                               "                                                       print (\"Info: Node promotion confirmed.\\n\");\n" +\r
+                               "                                                }\n" +\r
+                               "                                         }\n" +\r
+                               "                      next NODE_WITH_NO_MASTER;\n" +\r
+                               "                  }\n" +\r
+                               "              }\n" +\r
+                               "           }\n" +\r
+                               "   }\n" +\r
+                               "   print \"Info: All redis masters are on separate k8 Nodes. \\n\"    if ( ! @{$k8NodeInfo->{k8NodesWithoutMaster}}) ;\n" +\r
+                               "}\n" +\r
+                               "\n" +\r
+                               "sub promoteSlaveAsMaster() {\n" +\r
+                               "    my $slavePod = shift;    \n" +\r
+                               "    #print \"Info: Promoting Slave $slavePod->{'podName'} On $slavePod->{'k8Node'} as master\";\n" +\r
+                               "    my $cmd = qq[kubectl exec -it $slavePod->{'podName'} -- redis-cli -p 6379 cluster failover takeover];\n" +\r
+                               "    runRediClusterCmd($cmd);\n" +\r
+                               "    \n" +\r
+                               "}\n" +\r
+                               "sub runRediClusterCmd() {\n" +\r
+                               "  my $cmd = shift;    \n" +\r
+                               "  print \"Info: Running Cmd:$cmd \\n\";\n" +\r
+                               "  `$cmd;`;\n" +\r
+                               "  sleep(8);\n" +\r
+                               "}\n" +\r
+                               "\n" +\r
+                               "\n" +\r
+                               "#foreach my $item (@{$podTable}) {\n" +\r
+                               "#}\n" +\r
+                               "\n" +\r
+                               "# find_nodes_without-a-single_master\n" +\r
+                               "sub setk8NodesInfo() {\n" +\r
+                               "\n" +\r
+                               "   $podTable   = [];\n" +\r
+                               "   $k8NodeInfo = [];\n" +\r
+                               "\n" +\r
+                               "   getCurrentStatus();\n" +\r
+                               "   # All k8 nodes\n" +\r
+                               "   my @k8NodeList = uniq(map { $_->{'k8Node'} } @$podTable);\n" +\r
+                               "\n" +\r
+                               "   # Find Nodes with At least One master\n" +\r
+                               "   my @k8NodesWithMaster;\n" +\r
+                               "   foreach my $nodeName (@k8NodeList) {\n" +\r
+                               "      push(@k8NodesWithMaster, map { ($_->{'k8Node'} eq $nodeName) && ($_->{'rdNodeRole'} eq 'master')   ? $nodeName : ()  } @{$podTable} );\n" +\r
+                               "   }\n" +\r
+                               "\n" +\r
+                               "   # Find Nodes without any master = All nodes - Nodes with at least one Master\n" +\r
+                               "   my %k8NodesMap = ();\n" +\r
+                               "   foreach (@k8NodesWithMaster) { \n" +\r
+                               "           if ( exists $k8NodesMap{$_} ) {\n" +\r
+                               "                   $k8NodesMap{$_}++;\n" +\r
+                               "           } else {\n" +\r
+                               "                   $k8NodesMap{$_} = 1;\n" +\r
+                               "           }\n" +\r
+                               "   }\n" +\r
+                               "   my @k8NodesWithoutMaster = map { exists $k8NodesMap{$_} ? () : $_ } @k8NodeList;\n" +\r
+                               "   my @k8NodesWithExtraMaster = uniq(map { $k8NodesMap{$_} > 1 ? $_ : () } @k8NodesWithMaster);\n" +\r
+                               "\n" +\r
+                               "   $k8NodeInfo = { 'allk8Nodes' => \\@k8NodeList, 'k8NodesWithExtraMaster' => \\@k8NodesWithExtraMaster, 'k8NodesWithoutMaster' => \\@k8NodesWithoutMaster };\n" +\r
+                               "}\n" +\r
+                               "\n" +\r
+                               "\n" +\r
+                               "\n" +\r
+                               "\n" +\r
+                               "\n" +\r
+                               "# Validate if number of masters ,= number of rea\n" +\r
+                               "\n" +\r
+                               "#\n" +\r
+                               "#sub filter\n" +\r
+                               "\n" +\r
+                               "=head\n" +\r
+                               "get \n" +\r
+                               "podName where k8Node eq \"x\"\n" +\r
+                               "    get position of k8node eq x \n" +\r
+                               "where \n" +\r
+                               "=cut\n" +\r
+                               "\n" +\r
+                               "exit;\n" +\r
+                               "\n" +\r
+                               "sub uniq {\n" +\r
+                               "    my %seen;\n" +\r
+                               "    grep !$seen{$_}++, @_;\n" +\r
+                               "}\n" +\r
+                               "\n" +\r
+                               "sub getCurrentStatus() {\n" +\r
+                               "\n" +\r
+                               "    # Run pod list command    \n" +\r
+                               "    my @getPods = `kubectl get po --no-headers  -o wide -l $podLabel |grep Running`;    chomp @getPods;\n" +\r
+                               "    #my @getPods = `kubectl get po --no-headers  -o wide -l managed-by=redis-cluster-operator|grep Running`;    chomp @getPods;\n" +\r
+                               "\n" +\r
+                               "    foreach my $podLine (@getPods) {\n" +\r
+                               "        my @podData = split(/\\s+/,$podLine);\n" +\r
+                               "        my ($podName,$status,$age,$podIP,$podNode) = ($podData[0], $podData[2], $podData[4], $podData[5],$podData[6]);\n" +\r
+                               "\n" +\r
+                               "        #print \"$podName,$status,$age,$podIP,$podNode\" .\"\\n\"; \n" +\r
+                               "        my $podRow = { 'podIP' => $podIP, 'podName' => $podName, 'k8Node' => $podNode, 'podAge' => $age, 'podStatus' => $status };    \n" +\r
+                               "        push (@{$podTable},$podRow)\n" +\r
+                               "    }\n" +\r
+                               "\n" +\r
+                               "    my $podName = $podTable->[0]{'podName'};\n" +\r
+                               "    #print \"Info:kubectl exec $podName  -- cat nodes.conf|sort -k3\\n\";\n" +\r
+                               "    my @rdNodeData = `kubectl exec $podName  -- cat nodes.conf|sort -k3`;    chomp @rdNodeData;\n" +\r
+                               "    foreach my $rdNodeLine (@rdNodeData) {\n" +\r
+                               "        next if ($rdNodeLine !~ /master|slave/);\n" +\r
+                               "            my @rdNodeData = split(/\\s+/,$rdNodeLine);\n" +\r
+                               "            my ($rdNodeID,$rdRole,$rdMasterNodeID,$epoch) = ($rdNodeData[0], $rdNodeData[2], $rdNodeData[3],$rdNodeData[5]);\n" +\r
+                               "            my ($podIP) = split(/:/,$rdNodeData[1]);\n" +\r
+                               "            $rdRole =~ s/myself,//;\n" +\r
+                               "\n" +\r
+                               "            #print \"$rdNodeID,$rdRole,$rdMasterNodeID,$podIP\" .\"\\n\";\n" +\r
+                               "            my $rdElem = { 'podIP'    => $podIP, \n" +\r
+                               "                           'rdNodeID' => $rdNodeID,\n" +\r
+                               "                           'rdRole'   => $rdRole,\n" +\r
+                               "                           'rdMasterNodeID' => $rdMasterNodeID,\n" +\r
+                               "                           'epoch'          => $epoch\n" +\r
+                               "            };\n" +\r
+                               "\n" +\r
+                               "        for(my $index=0; $index <= $#{$podTable}; $index++) {\n" +\r
+                               "            if ( $podTable->[$index]{'podIP'} eq $podIP ) {\n" +\r
+                               "                #print \"Matched\\n\";\n" +\r
+                               "                $podTable->[$index]{'rdNodeID'}       = $rdNodeID;\n" +\r
+                               "                $podTable->[$index]{'rdNodeRole'}        = $rdRole;\n" +\r
+                               "                $podTable->[$index]{'rdMasterNodeID'} = $rdMasterNodeID;\n" +\r
+                               "                $podTable->[$index]{'epoch'}          = $epoch;\n" +\r
+                               "            }\n" +\r
+                               "        }\n" +\r
+                               "        #exit;\n" +\r
+                               "\n" +\r
+                               "    }\n" +\r
+                               "}\n" +\r
+                               "",\r
+                       "relatenode.sh": "#!/bin/sh\n" +\r
+                               "podLabel=${POD_LABEL}\n" +\r
+                               "firstPod=$(kubectl  get   po -o wide -l app.kubernetes.io/name=redis-cluster --no-headers=true|head -1|cut -d\" \" -f1)\n" +\r
+                               "\n" +\r
+                               "kubectl get po -o wide -l $podLabel |tail +2|awk '{printf(\"%s:%s:%s:%s\\n\",$6,$1,$7,$10)}'|sort  > /tmp/1.txt\n" +\r
+                               "kubectl exec  $firstPod  -- cat nodes.conf|sed 's/myself,//'|awk '/master|slave/ {print $2,$1,$3,$4}'|sort > /tmp/2.txt\n" +\r
+                               "join -t \":\"  /tmp/1.txt /tmp/2.txt |sort -k3,4 | sed 's/ /:/g'|awk -F\":\" '{print $2,$7,$3,$1,$4,$6,$8}' > /tmp/3.txt\n" +\r
+                               "\n" +\r
+                               "echo \"\\n   POD_NAME      ROLE      k8NODE        POD_IP                   REDIS_NODE_ID                       REDIS_MASTER_NODE_ID\"\n" +\r
+                               "grep $(cut -d\" \" -f4 /tmp/2.txt|sort -u|grep -v \"-\"|sed -n '1p') /tmp/3.txt\n" +\r
+                               "echo \"\"\n" +\r
+                               "grep $(cut -d\" \" -f4 /tmp/2.txt|sort -u|grep -v \"-\"|sed -n '2p') /tmp/3.txt\n" +\r
+                               "echo \"\"\n" +\r
+                               "grep $(cut -d\" \" -f4 /tmp/2.txt|sort -u|grep -v \"-\"|sed -n '3p') /tmp/3.txt",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name: "assigner-cm",\r
+               },\r
+       }\r
+\r
+       configMap29 := &corev1.ConfigMap{\r
+               Data: map[string]string{\r
+                       "rmr_verbose": "0\n" +\r
+                               "",\r
+                       "router.txt": "newrt|start\n" +\r
+                               "rte|10090|service-ricplt-e2term-rmr.ricplt:38000\n" +\r
+                               "newrt|end",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "configmap-ricplt-rsm-router-configmap",\r
+                       Namespace: "ricplt",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "ConfigMap",\r
+               },\r
+       }\r
+\r
+       configMap30 := &corev1.ConfigMap{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "configmap-ricplt-rsm",\r
+                       Namespace: "ricplt",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "ConfigMap",\r
+               },\r
+               Data: map[string]string{\r
+                       "configuration.yaml": "logging:\n" +\r
+                               "  logLevel:  \"info\"\n" +\r
+                               "http:\n" +\r
+                               "  port: 4800\n" +\r
+                               "rmr:\n" +\r
+                               "  port: 4801\n" +\r
+                               "  maxMsgSize: 4096\n" +\r
+                               "  readyIntervalSec: 1\n" +\r
+                               "rnib:\n" +\r
+                               "  maxRnibConnectionAttempts: 3\n" +\r
+                               "  rnibRetryIntervalMs: 10",\r
+               },\r
+       }\r
+\r
+       configMap31 := &corev1.ConfigMap{\r
+               Data: map[string]string{\r
+                       "RMR_RTG_SVC": "4561",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name: "configmap-ricplt-rsm-env",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "ConfigMap",\r
+               },\r
+       }\r
+\r
+       configMap32 := &corev1.ConfigMap{\r
+               Data: map[string]string{\r
+                       "rtmgrcfg": "\"PlatformComponents\":\n" +\r
+                               "  -\n" +\r
+                               "    \"name\": \"SUBMAN\"\n" +\r
+                               "    \"fqdn\": \"service-ricplt-submgr-rmr.ricplt\"\n" +\r
+                               "    \"port\": 4560\n" +\r
+                               "  -\n" +\r
+                               "    \"name\": \"E2MAN\"\n" +\r
+                               "    \"fqdn\": \"service-ricplt-e2mgr-rmr.ricplt\"\n" +\r
+                               "    \"port\": 3801\n" +\r
+                               "  -\n" +\r
+                               "    \"name\": \"A1MEDIATOR\"\n" +\r
+                               "    \"fqdn\": \"service-ricplt-a1mediator-rmr.ricplt\"\n" +\r
+                               "    \"port\": 4562\n" +\r
+                               "\n" +\r
+                               "\"XMURL\":\n" +\r
+                               "  \"http://service-ricplt-appmgr-http:8080/ric/v1/xapps\"\n" +\r
+                               "\"E2MURL\":\n" +\r
+                               "  \"http://service-ricplt-e2mgr-http:3800/v1/e2t/list\"\n" +\r
+                               "\"RTFILE\":\n" +\r
+                               "  \"/db/rt.json\"\n" +\r
+                               "\"CFGFILE\":\n" +\r
+                               "  \"/cfg/rtmgr-config.yaml\"\n" +\r
+                               "\"RPE\":\n" +\r
+                               "  \"rmrpush\"\n" +\r
+                               "\"SBI\":\n" +\r
+                               "  \"rmrpush\"\n" +\r
+                               "\"SBIURL\":\n" +\r
+                               "  \"0.0.0.0\"\n" +\r
+                               "\"NBI\":\n" +\r
+                               "  \"httpRESTful\"\n" +\r
+                               "\"NBIURL\":\n" +\r
+                               "  \"http://service-ricplt-rtmgr-http:3800\"\n" +\r
+                               "\"SDL\":\n" +\r
+                               "  \"file\"\n" +\r
+                               "\"local\":\n" +\r
+                               "  \"host\": \":8080\"\n" +\r
+                               "\"logger\":\n" +\r
+                               "  \"level\": 4\n" +\r
+                               "\"periodicRoutes\":\n" +\r
+                               "  \"enable\"              \n" +\r
+                               "\"rmr\":\n" +\r
+                               "  \"protPort\": \"tcp:4560\"\n" +\r
+                               "  \"maxSize\": 1024\n" +\r
+                               "  \"numWorkers\": 1\n" +\r
+                               "  \"threadType\": 1\n" +\r
+                               "\"messagetypes\": [\n" +\r
+                               "   \"RIC_HEALTH_CHECK_REQ=100\",\n" +\r
+                               "   \"RIC_HEALTH_CHECK_RESP=101\",\n" +\r
+                               "   \"RIC_ALARM=110\",\n" +\r
+                               "   \"RIC_ALARM_QUERY=111\",\n" +\r
+                               "   \"RIC_SCTP_CONNECTION_FAILURE=1080\",\n" +\r
+                               "   \"E2_TERM_INIT=1100\",\n" +\r
+                               "   \"E2_TERM_KEEP_ALIVE_REQ=1101\",\n" +\r
+                               "   \"E2_TERM_KEEP_ALIVE_RESP=1102\",\n" +\r
+                               "   \"RIC_SCTP_CLEAR_ALL=1090\",\n" +\r
+                               "   \"RAN_CONNECTED=1200\",\n" +\r
+                               "   \"RAN_RESTARTED=1210\",\n" +\r
+                               "   \"RAN_RECONFIGURED=1220\",\n" +\r
+                               "   \"RIC_ENB_LOAD_INFORMATION=10020\",\n" +\r
+                               "   \"RIC_SN_STATUS_TRANSFER=10040\",\n" +\r
+                               "   \"RIC_UE_CONTEXT_RELEASE=10050\",\n" +\r
+                               "   \"RIC_X2_SETUP_REQ=10060\",\n" +\r
+                               "   \"RIC_X2_SETUP_RESP=10061\",\n" +\r
+                               "   \"RIC_X2_SETUP_FAILURE=10062\",\n" +\r
+                               "   \"RIC_X2_RESET=10070\",\n" +\r
+                               "   \"RIC_X2_RESET_RESP=10071\",\n" +\r
+                               "   \"RIC_ENB_CONF_UPDATE=10080\",\n" +\r
+                               "   \"RIC_ENB_CONF_UPDATE_ACK=10081\",\n" +\r
+                               "   \"RIC_ENB_CONF_UPDATE_FAILURE=10082\",\n" +\r
+                               "   \"RIC_RES_STATUS_REQ=10090\",\n" +\r
+                               "   \"RIC_RES_STATUS_RESP=10091\",\n" +\r
+                               "   \"RIC_RES_STATUS_FAILURE=10092\",\n" +\r
+                               "   \"RIC_SGNB_ADDITION_REQ=10270\",\n" +\r
+                               "   \"RIC_SGNB_ADDITION_ACK=10271\",\n" +\r
+                               "   \"RIC_SGNB_ADDITION_REJECT=10272\",\n" +\r
+                               "   \"RIC_SGNB_RECONF_COMPLETE=10280\",\n" +\r
+                               "   \"RIC_SGNB_MOD_REQUEST=10290\",\n" +\r
+                               "   \"RIC_SGNB_MOD_REQUEST_ACK=10291\",\n" +\r
+                               "   \"RIC_SGNB_MOD_REQUEST_REJ=10292\",\n" +\r
+                               "   \"RIC_SGNB_MOD_REQUIRED=10300\",\n" +\r
+                               "   \"RIC_SGNB_MOD_CONFIRM=10301\",\n" +\r
+                               "   \"RIC_SGNB_MOD_REFUSE=10302\",\n" +\r
+                               "   \"RIC_SGNB_RELEASE_REQUEST=10310\",\n" +\r
+                               "   \"RIC_SGNB_RELEASE_REQUEST_ACK=10311\",\n" +\r
+                               "   \"RIC_SGNB_RELEASE_REQUIRED=10320\",\n" +\r
+                               "   \"RIC_SGNB_RELEASE_CONFIRM=10321\",\n" +\r
+                               "   \"RIC_RRC_TRANSFER=10350\",\n" +\r
+                               "   \"RIC_ENDC_X2_SETUP_REQ=10360\",\n" +\r
+                               "   \"RIC_ENDC_X2_SETUP_RESP=10361\",\n" +\r
+                               "   \"RIC_ENDC_X2_SETUP_FAILURE=10362\",\n" +\r
+                               "   \"RIC_ENDC_CONF_UPDATE=10370\",\n" +\r
+                               "   \"RIC_ENDC_CONF_UPDATE_ACK=10371\",\n" +\r
+                               "   \"RIC_ENDC_CONF_UPDATE_FAILURE=10372\",\n" +\r
+                               "   \"RIC_SECONDARY_RAT_DATA_USAGE_REPORT=10380\",\n" +\r
+                               "   \"RIC_E2_SETUP_REQ=12001\",\n" +\r
+                               "   \"RIC_E2_SETUP_RESP=12002\",\n" +\r
+                               "   \"RIC_E2_SETUP_FAILURE=12003\",\n" +\r
+                               "   \"RIC_ERROR_INDICATION=12007\",\n" +\r
+                               "   \"RIC_SUB_REQ=12010\",\n" +\r
+                               "   \"RIC_SUB_RESP=12011\",\n" +\r
+                               "   \"RIC_SUB_FAILURE=12012\",\n" +\r
+                               "   \"RIC_SUB_DEL_REQ=12020\",\n" +\r
+                               "   \"RIC_SUB_DEL_RESP=12021\",\n" +\r
+                               "   \"RIC_SUB_DEL_FAILURE=12022\",\n" +\r
+                               "   \"RIC_SUB_DEL_REQUIRED=12023\",\n" +\r
+                               "   \"RIC_CONTROL_REQ=12040\",\n" +\r
+                               "   \"RIC_CONTROL_ACK=12041\",\n" +\r
+                               "   \"RIC_CONTROL_FAILURE=12042\",\n" +\r
+                               "   \"RIC_INDICATION=12050\",\n" +\r
+                               "   \"A1_POLICY_REQ=20010\",\n" +\r
+                               "   \"A1_POLICY_RESP=20011\",\n" +\r
+                               "   \"A1_POLICY_QUERY=20012\",\n" +\r
+                               "   \"TS_UE_LIST=30000\",\n" +\r
+                               "   \"TS_QOE_PRED_REQ=30001\",\n" +\r
+                               "   \"TS_QOE_PREDICTION=30002\",\n" +\r
+                               "   \"TS_ANOMALY_UPDATE=30003\",\n" +\r
+                               "   \"TS_ANOMALY_ACK=30004\",\n" +\r
+                               "   \"MC_REPORT=30010\",\n" +\r
+                               "   \"DCAPTERM_RTPM_RMR_MSGTYPE=33001\",\n" +\r
+                               "   \"DCAPTERM_GEO_RMR_MSGTYPE=33002\",\n" +\r
+                               "   \"RIC_SERVICE_UPDATE=12030\",\n" +\r
+                               "   \"RIC_SERVICE_UPDATE_ACK=12031\",\n" +\r
+                               "   \"RIC_SERVICE_UPDATE_FAILURE=12032\",\n" +\r
+                               "   \"RIC_E2NODE_CONFIG_UPDATE=12070\",\n" +\r
+                               "   \"RIC_E2NODE_CONFIG_UPDATE_ACK==12071\",\n" +\r
+                               "   \"RIC_E2NODE_CONFIG_UPDATE_FAILURE=12072\",\n" +\r
+                               "   \"RIC_E2_RESET_REQ=12004\",\n" +\r
+                               "   \"RIC_E2_RESET_RESP=12005\",\n" +\r
+                               "   ]\n" +\r
+                               "\n" +\r
+                               "\"PlatformRoutes\": [\n" +\r
+                               "  { 'messagetype': 'RIC_SUB_REQ', 'senderendpoint': 'SUBMAN', 'subscriptionid': -1, 'endpoint': '', 'meid': '%meid'},\n" +\r
+                               "  { 'messagetype': 'RIC_SUB_DEL_REQ', 'senderendpoint': 'SUBMAN', 'subscriptionid': -1,'endpoint': '', 'meid': '%meid'},\n" +\r
+                               "  { 'messagetype': 'RIC_SUB_RESP', 'senderendpoint': '', 'subscriptionid': -1, 'endpoint': 'SUBMAN', 'meid': ''},\n" +\r
+                               "  { 'messagetype': 'RIC_SUB_DEL_RESP', 'senderendpoint': '', 'subscriptionid': -1, 'endpoint': 'SUBMAN', 'meid': ''},\n" +\r
+                               "  { 'messagetype': 'RIC_SUB_FAILURE', 'senderendpoint': '', 'subscriptionid': -1, 'endpoint': 'SUBMAN', 'meid': ''},\n" +\r
+                               "  { 'messagetype': 'RIC_SUB_DEL_FAILURE', 'senderendpoint': '', 'subscriptionid': -1, 'endpoint': 'SUBMAN', 'meid': ''},\n" +\r
+                               "  { 'messagetype': 'RIC_SUB_DEL_REQUIRED', 'senderendpoint': '', 'subscriptionid': -1, 'endpoint': 'SUBMAN', 'meid': ''},\n" +\r
+                               "  { 'messagetype': 'RIC_X2_SETUP_REQ', 'senderendpoint': 'E2MAN', 'subscriptionid': -1, 'endpoint': '', 'meid': '%meid'},\n" +\r
+                               "  { 'messagetype': 'RIC_X2_RESET', 'senderendpoint': 'E2MAN', 'subscriptionid': -1, 'endpoint': '', 'meid': '%meid'},\n" +\r
+                               "  { 'messagetype': 'RIC_X2_RESET_RESP', 'senderendpoint': 'E2MAN', 'subscriptionid': -1, 'endpoint': '', 'meid': '%meid'},\n" +\r
+                               "  { 'messagetype': 'RIC_ENDC_X2_SETUP_REQ', 'senderendpoint': 'E2MAN', 'subscriptionid': -1, 'endpoint': '', 'meid': '%meid'},\n" +\r
+                               "  { 'messagetype': 'RIC_ENB_CONF_UPDATE_ACK', 'senderendpoint': 'E2MAN', 'subscriptionid': -1, 'endpoint': '', 'meid': '%meid'},\n" +\r
+                               "  { 'messagetype': 'RIC_ENB_CONF_UPDATE_FAILURE', 'senderendpoint': 'E2MAN', 'subscriptionid': -1, 'endpoint': '', 'meid': '%meid'},\n" +\r
+                               "  { 'messagetype': 'RIC_ENDC_CONF_UPDATE_ACK', 'senderendpoint': 'E2MAN', 'subscriptionid': -1, 'endpoint': '', 'meid': '%meid'},\n" +\r
+                               "  { 'messagetype': 'RIC_ENDC_CONF_UPDATE_FAILURE', 'senderendpoint': 'E2MAN', 'subscriptionid': -1, 'endpoint': '', 'meid': '%meid'},\n" +\r
+                               "  { 'messagetype': 'RIC_E2_SETUP_REQ', 'senderendpoint': '', 'subscriptionid': -1, 'endpoint': 'E2MAN', 'meid': ''},\n" +\r
+                               "  { 'messagetype': 'E2_TERM_INIT', 'senderendpoint': '', 'subscriptionid': -1, 'endpoint': 'E2MAN', 'meid': ''},\n" +\r
+                               "  { 'messagetype': 'RIC_X2_SETUP_RESP', 'senderendpoint': '', 'subscriptionid': -1, 'endpoint': 'E2MAN', 'meid': ''},\n" +\r
+                               "  { 'messagetype': 'RIC_X2_SETUP_FAILURE', 'senderendpoint': '', 'subscriptionid': -1, 'endpoint': 'E2MAN', 'meid': ''},\n" +\r
+                               "  { 'messagetype': 'RIC_X2_RESET', 'senderendpoint': '', 'subscriptionid': -1, 'endpoint': 'E2MAN', 'meid': ''},\n" +\r
+                               "  { 'messagetype': 'RIC_X2_RESET_RESP', 'senderendpoint': '', 'subscriptionid': -1, 'endpoint': 'E2MAN', 'meid': ''},\n" +\r
+                               "  { 'messagetype': 'RIC_ENDC_X2_SETUP_RESP', 'senderendpoint': '', 'subscriptionid': -1, 'endpoint': 'E2MAN', 'meid': ''},\n" +\r
+                               "  { 'messagetype': 'RIC_ENDC_X2_SETUP_FAILURE', 'senderendpoint': '', 'subscriptionid': -1, 'endpoint': 'E2MAN', 'meid': ''},\n" +\r
+                               "  { 'messagetype': 'RIC_ENDC_CONF_UPDATE', 'senderendpoint': '', 'subscriptionid': -1, 'endpoint': 'E2MAN', 'meid': ''},\n" +\r
+                               "  { 'messagetype': 'RIC_SCTP_CONNECTION_FAILURE', 'senderendpoint': '', 'subscriptionid': -1, 'endpoint': 'E2MAN', 'meid': ''},\n" +\r
+                               "  { 'messagetype': 'RIC_ERROR_INDICATION', 'senderendpoint': '', 'subscriptionid': -1, 'endpoint': 'E2MAN', 'meid': ''},\n" +\r
+                               "  { 'messagetype': 'RIC_ENB_CONF_UPDATE', 'senderendpoint': '', 'subscriptionid': -1, 'endpoint': 'E2MAN', 'meid': ''},\n" +\r
+                               "  { 'messagetype': 'RIC_ENB_LOAD_INFORMATION', 'senderendpoint': '', 'subscriptionid': -1, 'endpoint': 'E2MAN', 'meid': ''},\n" +\r
+                               "  { 'messagetype': 'E2_TERM_KEEP_ALIVE_RESP', 'senderendpoint': '', 'subscriptionid': -1, 'endpoint': 'E2MAN', 'meid': ''},\n" +\r
+                               "  { 'messagetype': 'A1_POLICY_QUERY', 'senderendpoint': '', 'subscriptionid': -1, 'endpoint': 'A1MEDIATOR', 'meid': ''},\n" +\r
+                               "  { 'messagetype': 'A1_POLICY_RESP', 'senderendpoint': '', 'subscriptionid': -1, 'endpoint': 'A1MEDIATOR', 'meid': ''},\n" +\r
+                               "  { 'messagetype': 'RIC_SERVICE_UPDATE', 'senderendpoint': '', 'subscriptionid': -1, 'endpoint': 'E2MAN', 'meid': ''},\n" +\r
+                               "  { 'messagetype': 'RIC_E2NODE_CONFIG_UPDATE', 'senderendpoint': '', 'subscriptionid': -1, 'endpoint': 'E2MAN', 'meid': ''},\n" +\r
+                               "  { 'messagetype': 'RIC_E2_RESET_REQ', 'senderendpoint': '', 'subscriptionid': -1, 'endpoint': 'E2MAN', 'meid': ''},\n" +\r
+                               "   ]\n" +\r
+                               "",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name: "configmap-ricplt-rtmgr-rtmgrcfg",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "ConfigMap",\r
+               },\r
+       }\r
+\r
+       configMap33 := &corev1.ConfigMap{\r
+               Data: map[string]string{\r
+                       "CFGFILE":     "/cfg/rtmgr-config.yaml",\r
+                       "RMR_RTG_SVC": "4561",\r
+                       "RMR_SEED_RT": "/uta_rtg_ric.rt",\r
+                       "RMR_SRC_ID":  "service-ricplt-rtmgr-rmr.ricplt",\r
+                       "XMURL":       "http://service-ricplt-appmgr-http:8080/ric/v1/xapps",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name: "configmap-ricplt-rtmgr-env",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       Kind:       "ConfigMap",\r
+                       APIVersion: "v1",\r
+               },\r
+       }\r
+\r
+       configMap34 := &corev1.ConfigMap{\r
+               Data: map[string]string{\r
+                       "submgrcfg": "\"local\":\n" +\r
+                               "  \"host\": \":8080\"\n" +\r
+                               "\"logger\":\n" +\r
+                               "  \"level\": 3\n" +\r
+                               "\"rmr\":\n" +\r
+                               "  \"protPort\" : \"tcp:4560\"\n" +\r
+                               "  \"maxSize\": 8192\n" +\r
+                               "  \"numWorkers\": 1\n" +\r
+                               "\"rtmgr\":\n" +\r
+                               "  \"hostAddr\": \"service-ricplt-rtmgr-http\"\n" +\r
+                               "  \"port\"    : 3800\n" +\r
+                               "  \"baseUrl\" : \"/ric/v1\"\n" +\r
+                               "\"db\":\n" +\r
+                               "  \"sessionNamespace\": \"XMSession\"\n" +\r
+                               "  \"host\": \":6379\"\n" +\r
+                               "  \"prot\": \"tcp\"\n" +\r
+                               "  \"maxIdle\": 80\n" +\r
+                               "  \"maxActive\": 12000\n" +\r
+                               "\"controls\":\n" +\r
+                               "  \"e2tSubReqTimeout_ms\": 2000\n" +\r
+                               "  \"e2tSubDelReqTime_ms\": 2000\n" +\r
+                               "  \"e2tRecvMsgTimeout_ms\": 2000\n" +\r
+                               "  \"e2tMaxSubReqTryCount\": 2\n" +\r
+                               "  \"e2tMaxSubDelReqTryCount\": 2\n" +\r
+                               "  \"checkE2State\": \"true\"\n" +\r
+                               "  \"readSubsFromDb\": \"true\"\n" +\r
+                               "  \"dbTryCount\": 200\n" +\r
+                               "  \"dbRetryForever\": \"true\"\n" +\r
+                               "  \"waitRouteCleanup_ms\": 5000\n" +\r
+                               "",\r
+                       "submgrutartg": "newrt|start\n" +\r
+                               "newrt|end\n" +\r
+                               "",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "submgrcfg",\r
+                       Namespace: "ricplt",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       Kind:       "ConfigMap",\r
+                       APIVersion: "v1",\r
+               },\r
+       }\r
+\r
+       configMap35 := &corev1.ConfigMap{\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "ConfigMap",\r
+               },\r
+               Data: map[string]string{\r
+                       "SUBMGR_SEED_SN": "1",\r
+                       "CFG_FILE":       "/cfg/submgr-config.yaml",\r
+                       "RMR_RTG_SVC":    "4561",\r
+                       "RMR_SEED_RT":    "/cfg/submgr-uta-rtg.rt",\r
+                       "RMR_SRC_ID":     "service-ricplt-submgr-rmr.ricplt",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name: "configmap-ricplt-submgr-env",\r
+               },\r
+       }\r
+\r
+       configMap36 := &corev1.ConfigMap{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "configmap-ricplt-vespamgr",\r
+                       Namespace: "ricplt",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "ConfigMap",\r
+               },\r
+               Data: map[string]string{\r
+                       "VESMGR_PRICOLLECTOR_SECURE":     "false",\r
+                       "VESMGR_PRICOLLECTOR_SERVERROOT": "/vescollector",\r
+                       "VESMGR_ALERTMANAGER_BIND_ADDR":  ":9095",\r
+                       "VESMGR_PRICOLLECTOR_PASSWORD":   "sample1",\r
+                       "VESMGR_PRICOLLECTOR_ADDR":       "aux-entry",\r
+                       "VESMGR_PRICOLLECTOR_PORT":       "8443",\r
+                       "VESMGR_PRICOLLECTOR_USER":       "sample1",\r
+                       "VESMGR_PROMETHEUS_ADDR":         "http://r4-infrastructure-prometheus-server.ricplt",\r
+                       "VESMGR_HB_INTERVAL":             "60s",\r
+                       "VESMGR_MEAS_INTERVAL":           "30s",\r
+               },\r
+       }\r
+\r
+       configMap37 := &corev1.ConfigMap{\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "ConfigMap",\r
+               },\r
+               Data: map[string]string{\r
+                       "DEBUG":                 "true",\r
+                       "PORT":                  "8080",\r
+                       "STORAGE":               "local",\r
+                       "STORAGE_LOCAL_ROOTDIR": "/charts",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name: "configmap-ricplt-xapp-onboarder-chartmuseum-env",\r
+               },\r
+       }\r
+\r
+       configMap38 := &corev1.ConfigMap{\r
+               Data: map[string]string{\r
+                       "CHART_REPO_URL":               "http://0.0.0.0:8080",\r
+                       "CHART_WORKSPACE_PATH":         "/tmp/xapp-onboarder",\r
+                       "HTTP_RETRY":                   "3",\r
+                       "MOCK_TEST_HELM_REPO_TEMP_DIR": "/tmp/mock_helm_repo",\r
+                       "ALLOW_REDEPLOY":               "True",\r
+                       "CHART_WORKSPACE_SIZE":         "500MB",\r
+                       "FLASK_DEBUG":                  "False",\r
+                       "FLASK_PORT":                   "8888",\r
+                       "HELM_VERSION":                 "2.12.3",\r
+                       "MOCK_TEST_MODE":               "False",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name: "configmap-ricplt-xapp-onboarder-env",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "ConfigMap",\r
+               },\r
+       }\r
 \r
-       return []*corev1.ConfigMap{configMap1, configMap2, configMap3, configMap4, configMap5, configMap6,configMap7, configMap8, configMap9, configMap10, configMap11, configMap12, configMap13, configMap14, configMap15, configMap16, configMap17, configMap18, configMap19}\r
+       return []*corev1.ConfigMap{configMap1, configMap2, configMap3, configMap4, configMap5, configMap6, configMap7, configMap8, configMap9, configMap10, configMap11, configMap12, configMap13, configMap14, configMap15, configMap16, configMap17, configMap18, configMap19, configMap20, configMap21, configMap22, configMap23, configMap24, configMap25, configMap26, configMap27, configMap28, configMap29, configMap30, configMap31, configMap32, configMap33, configMap34, configMap35, configMap36, configMap37, configMap38}\r
 }\r
index a4d224c..a03a85c 100644 (file)
@@ -36,6 +36,7 @@ func GetIngress() []*unstructured.Unstructured {
                        },\r
                },\r
        }\r
+\r
        ingress2 := &unstructured.Unstructured{\r
                Object: map[string]interface{}{\r
                        "apiVersion": "networking.k8s.io/v1beta1",\r
@@ -90,5 +91,86 @@ func GetIngress() []*unstructured.Unstructured {
                },\r
        }\r
 \r
-       return []*unstructured.Unstructured{ingress1, ingress2,ingress3}\r
+       ingress4 := &unstructured.Unstructured{\r
+               Object: map[string]interface{}{\r
+                       "apiVersion": "networking.k8s.io/v1beta1",\r
+                       "kind":       "Ingress",\r
+                       "metadata": map[string]interface{}{\r
+                               "name": "ingress-ricplt-rsm",\r
+                       },\r
+                       "spec": map[string]interface{}{\r
+                               "rules": []interface{}{\r
+                                       map[string]interface{}{\r
+                                               "http": map[string]interface{}{\r
+                                                       "paths": []interface{}{\r
+                                                               map[string]interface{}{\r
+                                                                       "backend": map[string]interface{}{\r
+                                                                               "serviceName": "service-ricplt-rsm-http",\r
+                                                                               "servicePort": 4800,\r
+                                                                       },\r
+                                                                       "path": "/rsm",\r
+                                                               },\r
+                                                       },\r
+                                               },\r
+                                       },\r
+                               },\r
+                       },\r
+               },\r
+       }\r
+\r
+       ingress5 := &unstructured.Unstructured{\r
+               Object: map[string]interface{}{\r
+                       "apiVersion": "networking.k8s.io/v1beta1",\r
+                       "kind":       "Ingress",\r
+                       "metadata": map[string]interface{}{\r
+                               "name": "ingress-ricplt-xapp-onboarder-chartmuseum",\r
+                       },\r
+                       "spec": map[string]interface{}{\r
+                               "rules": []interface{}{\r
+                                       map[string]interface{}{\r
+                                               "http": map[string]interface{}{\r
+                                                       "paths": []interface{}{\r
+                                                               map[string]interface{}{\r
+                                                                       "path": "/helmrepo",\r
+                                                                       "backend": map[string]interface{}{\r
+                                                                               "serviceName": "service-ricplt-xapp-onboarder-http",\r
+                                                                               "servicePort": 8080,\r
+                                                                       },\r
+                                                               },\r
+                                                       },\r
+                                               },\r
+                                       },\r
+                               },\r
+                       },\r
+               },\r
+       }\r
+\r
+       ingress6 := &unstructured.Unstructured{\r
+               Object: map[string]interface{}{\r
+                       "metadata": map[string]interface{}{\r
+                               "name": "ingress-ricplt-xapp-onboarder-server",\r
+                       },\r
+                       "spec": map[string]interface{}{\r
+                               "rules": []interface{}{\r
+                                       map[string]interface{}{\r
+                                               "http": map[string]interface{}{\r
+                                                       "paths": []interface{}{\r
+                                                               map[string]interface{}{\r
+                                                                       "backend": map[string]interface{}{\r
+                                                                               "serviceName": "service-ricplt-xapp-onboarder-http",\r
+                                                                               "servicePort": 8888,\r
+                                                                       },\r
+                                                                       "path": "/onboard",\r
+                                                               },\r
+                                                       },\r
+                                               },\r
+                                       },\r
+                               },\r
+                       },\r
+                       "apiVersion": "networking.k8s.io/v1beta1",\r
+                       "kind":       "Ingress",\r
+               },\r
+       }\r
+\r
+       return []*unstructured.Unstructured{ingress1, ingress2, ingress3, ingress4, ingress5, ingress6}\r
 }
\ No newline at end of file
index e43a0ba..f7acdc5 100644 (file)
@@ -35,5 +35,439 @@ func GetRole() []*rbacv1.Role {
                        Kind:       "Role",\r
                },\r
        }\r
-       return []*rbacv1.Role{role1}\r
-}\r
+\r
+       role2 := &rbacv1.Role{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Labels: map[string]string{\r
+                               "app.kubernetes.io/managed-by": "Helm",\r
+                               "app.kubernetes.io/name":       "kong",\r
+                               "app.kubernetes.io/version":    "1.4",\r
+                               "helm.sh/chart":                "kong-0.36.6",\r
+                               "app.kubernetes.io/instance":   "release-name",\r
+                       },\r
+                       Name: "release-name-kong",\r
+               },\r
+               Rules: []rbacv1.PolicyRule{\r
+\r
+                       rbacv1.PolicyRule{\r
+                               Resources: []string{\r
+\r
+                                       "configmaps",\r
+                                       "pods",\r
+                                       "secrets",\r
+                                       "namespaces",\r
+                               },\r
+                               Verbs: []string{\r
+\r
+                                       "get",\r
+                               },\r
+                               APIGroups: []string{\r
+\r
+                                       "",\r
+                               },\r
+                       },\r
+                       rbacv1.PolicyRule{\r
+                               Verbs: []string{\r
+\r
+                                       "get",\r
+                                       "update",\r
+                               },\r
+                               APIGroups: []string{\r
+\r
+                                       "",\r
+                               },\r
+                               ResourceNames: []string{\r
+\r
+                                       "kong-ingress-controller-leader-kong-kong",\r
+                               },\r
+                               Resources: []string{\r
+\r
+                                       "configmaps",\r
+                               },\r
+                       },\r
+                       rbacv1.PolicyRule{\r
+                               APIGroups: []string{\r
+\r
+                                       "",\r
+                               },\r
+                               Resources: []string{\r
+\r
+                                       "configmaps",\r
+                               },\r
+                               Verbs: []string{\r
+\r
+                                       "create",\r
+                               },\r
+                       },\r
+                       rbacv1.PolicyRule{\r
+                               APIGroups: []string{\r
+\r
+                                       "",\r
+                               },\r
+                               Resources: []string{\r
+\r
+                                       "endpoints",\r
+                               },\r
+                               Verbs: []string{\r
+\r
+                                       "get",\r
+                               },\r
+                       },\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "rbac.authorization.k8s.io/v1",\r
+                       Kind:       "Role",\r
+               },\r
+       }\r
+\r
+       role3 := &rbacv1.Role{\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "rbac.authorization.k8s.io/v1",\r
+                       Kind:       "Role",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "ricxapp-tiller-base",\r
+                       Namespace: "ricxapp",\r
+               },\r
+               Rules: []rbacv1.PolicyRule{\r
+\r
+                       rbacv1.PolicyRule{\r
+                               APIGroups: []string{\r
+\r
+                                       "",\r
+                               },\r
+                               ResourceNames: []string{\r
+\r
+                                       "ricxapp-tiller-secret",\r
+                               },\r
+                               Resources: []string{\r
+\r
+                                       "secrets",\r
+                               },\r
+                               Verbs: []string{\r
+\r
+                                       "get",\r
+                               },\r
+                       },\r
+                       rbacv1.PolicyRule{\r
+                               APIGroups: []string{\r
+\r
+                                       "",\r
+                               },\r
+                               Resources: []string{\r
+\r
+                                       "pods/portforward",\r
+                               },\r
+                               Verbs: []string{\r
+\r
+                                       "create",\r
+                               },\r
+                       },\r
+                       rbacv1.PolicyRule{\r
+                               APIGroups: []string{\r
+\r
+                                       "",\r
+                               },\r
+                               Resources: []string{\r
+\r
+                                       "namespaces",\r
+                               },\r
+                               Verbs: []string{\r
+\r
+                                       "get",\r
+                               },\r
+                       },\r
+                       rbacv1.PolicyRule{\r
+                               APIGroups: []string{\r
+\r
+                                       "",\r
+                               },\r
+                               Resources: []string{\r
+\r
+                                       "pods",\r
+                                       "configmaps",\r
+                                       "deployments",\r
+                                       "services",\r
+                               },\r
+                               Verbs: []string{\r
+\r
+                                       "get",\r
+                                       "list",\r
+                                       "create",\r
+                                       "delete",\r
+                               },\r
+                       },\r
+               },\r
+       }\r
+\r
+       role4 := &rbacv1.Role{\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "rbac.authorization.k8s.io/v1",\r
+                       Kind:       "Role",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "ricxapp-tiller-operation",\r
+                       Namespace: "ricinfra",\r
+               },\r
+               Rules: []rbacv1.PolicyRule{\r
+\r
+                       rbacv1.PolicyRule{\r
+                               APIGroups: []string{\r
+\r
+                                       "",\r
+                               },\r
+                               Resources: []string{\r
+\r
+                                       "configmaps",\r
+                               },\r
+                               Verbs: []string{\r
+\r
+                                       "get",\r
+                                       "list",\r
+                                       "create",\r
+                                       "delete",\r
+                                       "update",\r
+                               },\r
+                       },\r
+               },\r
+       }\r
+\r
+       role5 := &rbacv1.Role{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "ricxapp-tiller-deployer",\r
+                       Namespace: "ricxapp",\r
+               },\r
+               Rules: []rbacv1.PolicyRule{\r
+\r
+                       rbacv1.PolicyRule{\r
+                               APIGroups: []string{\r
+\r
+                                       "",\r
+                               },\r
+                               Resources: []string{\r
+\r
+                                       "pods",\r
+                                       "configmaps",\r
+                                       "services",\r
+                               },\r
+                               Verbs: []string{\r
+\r
+                                       "get",\r
+                                       "list",\r
+                                       "create",\r
+                                       "delete",\r
+                               },\r
+                       },\r
+                       rbacv1.PolicyRule{\r
+                               Verbs: []string{\r
+\r
+                                       "get",\r
+                                       "list",\r
+                                       "create",\r
+                                       "delete",\r
+                               },\r
+                               APIGroups: []string{\r
+\r
+                                       "extensions",\r
+                                       "apps",\r
+                               },\r
+                               Resources: []string{\r
+\r
+                                       "deployments",\r
+                               },\r
+                       },\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "rbac.authorization.k8s.io/v1",\r
+                       Kind:       "Role",\r
+               },\r
+       }\r
+\r
+       role6 := &rbacv1.Role{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "tiller-secret-creator-xzhjjg-secret-create",\r
+                       Namespace: "ricinfra",\r
+               },\r
+               Rules: []rbacv1.PolicyRule{\r
+\r
+                       rbacv1.PolicyRule{\r
+                               APIGroups: []string{\r
+\r
+                                       "",\r
+                               },\r
+                               Resources: []string{\r
+\r
+                                       "secrets",\r
+                               },\r
+                               Verbs: []string{\r
+\r
+                                       "create",\r
+                                       "get",\r
+                                       "patch",\r
+                               },\r
+                       },\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "rbac.authorization.k8s.io/v1",\r
+                       Kind:       "Role",\r
+               },\r
+       }\r
+\r
+       role7 := &rbacv1.Role{\r
+               Rules: []rbacv1.PolicyRule{\r
+\r
+                       rbacv1.PolicyRule{\r
+                               APIGroups: []string{\r
+\r
+                                       "",\r
+                               },\r
+                               Resources: []string{\r
+\r
+                                       "configmaps",\r
+                                       "pods",\r
+                                       "secrets",\r
+                                       "namespaces",\r
+                               },\r
+                               Verbs: []string{\r
+\r
+                                       "get",\r
+                               },\r
+                       },\r
+                       rbacv1.PolicyRule{\r
+                               APIGroups: []string{\r
+\r
+                                       "",\r
+                               },\r
+                               ResourceNames: []string{\r
+\r
+                                       "kong-ingress-controller-leader-kong-kong",\r
+                               },\r
+                               Resources: []string{\r
+\r
+                                       "configmaps",\r
+                               },\r
+                               Verbs: []string{\r
+\r
+                                       "get",\r
+                                       "update",\r
+                               },\r
+                       },\r
+                       rbacv1.PolicyRule{\r
+                               APIGroups: []string{\r
+\r
+                                       "",\r
+                               },\r
+                               Resources: []string{\r
+\r
+                                       "configmaps",\r
+                               },\r
+                               Verbs: []string{\r
+\r
+                                       "create",\r
+                               },\r
+                       },\r
+                       rbacv1.PolicyRule{\r
+                               Resources: []string{\r
+\r
+                                       "endpoints",\r
+                               },\r
+                               Verbs: []string{\r
+\r
+                                       "get",\r
+                               },\r
+                               APIGroups: []string{\r
+\r
+                                       "",\r
+                               },\r
+                       },\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "rbac.authorization.k8s.io/v1",\r
+                       Kind:       "Role",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name: "release-name-kong",\r
+                       Labels: map[string]string{\r
+                               "helm.sh/chart":                "kong-0.36.6",\r
+                               "app.kubernetes.io/instance":   "release-name",\r
+                               "app.kubernetes.io/managed-by": "Helm",\r
+                               "app.kubernetes.io/name":       "kong",\r
+                               "app.kubernetes.io/version":    "1.4",\r
+                       },\r
+               },\r
+       }\r
+\r
+       role8 := &rbacv1.Role{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "svcacct-ricplt-o1mediator-ricxapp-podreader",\r
+                       Namespace: "ricxapp",\r
+               },\r
+               Rules: []rbacv1.PolicyRule{\r
+\r
+                       rbacv1.PolicyRule{\r
+                               APIGroups: []string{\r
+\r
+                                       "",\r
+                               },\r
+                               Resources: []string{\r
+\r
+                                       "pods",\r
+                               },\r
+                               Verbs: []string{\r
+\r
+                                       "get",\r
+                                       "list",\r
+                                       "watch",\r
+                               },\r
+                       },\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "rbac.authorization.k8s.io/v1",\r
+                       Kind:       "Role",\r
+               },\r
+       }\r
+\r
+       role9 := &rbacv1.Role{\r
+               Rules: []rbacv1.PolicyRule{\r
+\r
+                       rbacv1.PolicyRule{\r
+                               APIGroups: []string{\r
+\r
+                                       "",\r
+                               },\r
+                               Resources: []string{\r
+\r
+                                       "pods",\r
+                               },\r
+                               Verbs: []string{\r
+\r
+                                       "get",\r
+                                       "list",\r
+                               },\r
+                       },\r
+                       rbacv1.PolicyRule{\r
+                               APIGroups: []string{\r
+\r
+                                       "",\r
+                               },\r
+                               Resources: []string{\r
+\r
+                                       "pods/exec",\r
+                               },\r
+                               Verbs: []string{\r
+\r
+                                       "create",\r
+                               },\r
+                       },\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       Kind:       "Role",\r
+                       APIVersion: "rbac.authorization.k8s.io/v1",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name: "assigner-role",\r
+               },\r
+       }\r
+\r
+       return []*rbacv1.Role{role1, role2, role3, role4, role5, role6, role7, role8, role9}\r
+}
\ No newline at end of file
index ca6a093..1632aec 100644 (file)
@@ -30,5 +30,209 @@ func GetRoleBinding() []*rbacv1.RoleBinding {
                },\r
        }\r
 \r
-       return []*rbacv1.RoleBinding{roleBinding1}\r
+       roleBinding2 := &rbacv1.RoleBinding{\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "rbac.authorization.k8s.io/v1",\r
+                       Kind:       "RoleBinding",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Labels: map[string]string{\r
+                               "app.kubernetes.io/instance":   "release-name",\r
+                               "app.kubernetes.io/managed-by": "Helm",\r
+                               "app.kubernetes.io/name":       "kong",\r
+                               "app.kubernetes.io/version":    "1.4",\r
+                               "helm.sh/chart":                "kong-0.36.6",\r
+                       },\r
+                       Name:      "release-name-kong",\r
+                       Namespace: "ricplt",\r
+               },\r
+               RoleRef: rbacv1.RoleRef{\r
+                       APIGroup: "rbac.authorization.k8s.io",\r
+                       Kind:     "Role",\r
+                       Name:     "release-name-kong",\r
+               },\r
+               Subjects: []rbacv1.Subject{\r
+\r
+                       rbacv1.Subject{\r
+                               Kind:      "ServiceAccount",\r
+                               Name:      "release-name-kong",\r
+                               Namespace: "ricplt",\r
+                       },\r
+               },\r
+       }\r
+\r
+       roleBinding3 := &rbacv1.RoleBinding{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "svcacct-tiller-ricxapp-ricxapp-tiller-base",\r
+                       Namespace: "ricxapp",\r
+               },\r
+               RoleRef: rbacv1.RoleRef{\r
+                       APIGroup: "rbac.authorization.k8s.io",\r
+                       Kind:     "Role",\r
+                       Name:     "ricxapp-tiller-base",\r
+               },\r
+               Subjects: []rbacv1.Subject{\r
+\r
+                       rbacv1.Subject{\r
+                               Kind:      "ServiceAccount",\r
+                               Name:      "svcacct-tiller-ricxapp",\r
+                               Namespace: "ricinfra",\r
+                       },\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       Kind:       "RoleBinding",\r
+                       APIVersion: "rbac.authorization.k8s.io/v1",\r
+               },\r
+       }\r
+\r
+       roleBinding4 := &rbacv1.RoleBinding{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Namespace: "ricinfra",\r
+                       Name:      "svcacct-tiller-ricxapp-ricxapp-tiller-operation",\r
+               },\r
+               RoleRef: rbacv1.RoleRef{\r
+                       APIGroup: "rbac.authorization.k8s.io",\r
+                       Kind:     "Role",\r
+                       Name:     "ricxapp-tiller-operation",\r
+               },\r
+               Subjects: []rbacv1.Subject{\r
+\r
+                       rbacv1.Subject{\r
+                               Kind:      "ServiceAccount",\r
+                               Name:      "svcacct-tiller-ricxapp",\r
+                               Namespace: "ricinfra",\r
+                       },\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "rbac.authorization.k8s.io/v1",\r
+                       Kind:       "RoleBinding",\r
+               },\r
+       }\r
+\r
+       roleBinding5 := &rbacv1.RoleBinding{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Namespace: "ricxapp",\r
+                       Name:      "svcacct-tiller-ricxapp-ricxapp-tiller-deployer",\r
+               },\r
+               RoleRef: rbacv1.RoleRef{\r
+                       Kind:     "Role",\r
+                       Name:     "ricxapp-tiller-deployer",\r
+                       APIGroup: "rbac.authorization.k8s.io",\r
+               },\r
+               Subjects: []rbacv1.Subject{\r
+\r
+                       rbacv1.Subject{\r
+                               Kind:      "ServiceAccount",\r
+                               Name:      "svcacct-tiller-ricxapp",\r
+                               Namespace: "ricinfra",\r
+                       },\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "rbac.authorization.k8s.io/v1",\r
+                       Kind:       "RoleBinding",\r
+               },\r
+       }\r
+\r
+       roleBinding6 := &rbacv1.RoleBinding{\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "rbac.authorization.k8s.io/v1",\r
+                       Kind:       "RoleBinding",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Namespace: "ricinfra",\r
+                       Name:      "tiller-secret-creator-xzhjjg-secret-create",\r
+               },\r
+               RoleRef: rbacv1.RoleRef{\r
+                       APIGroup: "rbac.authorization.k8s.io",\r
+                       Kind:     "Role",\r
+                       Name:     "tiller-secret-creator-xzhjjg-secret-create",\r
+               },\r
+               Subjects: []rbacv1.Subject{\r
+\r
+                       rbacv1.Subject{\r
+                               Kind:      "ServiceAccount",\r
+                               Name:      "tiller-secret-creator-xzhjjg",\r
+                               Namespace: "ricinfra",\r
+                       },\r
+               },\r
+       }\r
+\r
+       roleBinding7 := &rbacv1.RoleBinding{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Labels: map[string]string{\r
+                               "app.kubernetes.io/instance":   "release-name",\r
+                               "app.kubernetes.io/managed-by": "Helm",\r
+                               "app.kubernetes.io/name":       "kong",\r
+                               "app.kubernetes.io/version":    "1.4",\r
+                               "helm.sh/chart":                "kong-0.36.6",\r
+                       },\r
+                       Name:      "release-name-kong",\r
+                       Namespace: "ricplt",\r
+               },\r
+               RoleRef: rbacv1.RoleRef{\r
+                       Name:     "release-name-kong",\r
+                       APIGroup: "rbac.authorization.k8s.io",\r
+                       Kind:     "Role",\r
+               },\r
+               Subjects: []rbacv1.Subject{\r
+\r
+                       rbacv1.Subject{\r
+                               Namespace: "ricplt",\r
+                               Kind:      "ServiceAccount",\r
+                               Name:      "release-name-kong",\r
+                       },\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "rbac.authorization.k8s.io/v1",\r
+                       Kind:       "RoleBinding",\r
+               },\r
+       }\r
+\r
+       roleBinding8 := &rbacv1.RoleBinding{\r
+               Subjects: []rbacv1.Subject{\r
+\r
+                       rbacv1.Subject{\r
+                               Kind:      "ServiceAccount",\r
+                               Name:      "svcacct-ricplt-o1mediator",\r
+                               Namespace: "ricplt",\r
+                       },\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "rbac.authorization.k8s.io/v1",\r
+                       Kind:       "RoleBinding",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "svcacct-ricplt-o1mediator-ricxapp-podreader",\r
+                       Namespace: "ricxapp",\r
+               },\r
+               RoleRef: rbacv1.RoleRef{\r
+                       APIGroup: "rbac.authorization.k8s.io",\r
+                       Kind:     "Role",\r
+                       Name:     "svcacct-ricplt-o1mediator-ricxapp-podreader",\r
+               },\r
+       }\r
+\r
+       roleBinding9 := &rbacv1.RoleBinding{\r
+               Subjects: []rbacv1.Subject{\r
+\r
+                       rbacv1.Subject{\r
+                               Kind: "ServiceAccount",\r
+                               Name: "assigner-sa",\r
+                       },\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "rbac.authorization.k8s.io/v1",\r
+                       Kind:       "RoleBinding",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name: "assigner-rb",\r
+               },\r
+               RoleRef: rbacv1.RoleRef{\r
+                       APIGroup: "rbac.authorization.k8s.io",\r
+                       Kind:     "Role",\r
+                       Name:     "assigner-role",\r
+               },\r
+       }\r
+\r
+       return []*rbacv1.RoleBinding{roleBinding1, roleBinding2, roleBinding3, roleBinding4, roleBinding5, roleBinding6, roleBinding7, roleBinding8, roleBinding9}\r
 }\r
index d2cfa89..0f93db4 100644 (file)
@@ -22,6 +22,287 @@ func GetSecret() []*corev1.Secret {
                        Kind:       "Secret",\r
                },\r
        }\r
-return []*corev1.Secret{secret1}\r
 \r
+       secret2 := &corev1.Secret{\r
+               Data: map[string][]uint8{\r
+                       "ca.crt": getDataForSecret("LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURaVENDQWsyZ0F3SUJBZ0lRR3J6MUJKT3lYZExpSGErYWE2UERIVEFOQmdrcWhraUc5dzBCQVFzRkFEQTkKTVRzd09RWURWUVFERXpJdlF6MVZVeTlQUFU4dFVrRk9JRUZzYkdsaGJtTmxMMDlWUFU4dFVrRk9JRk52Wm5SMwpZWEpsSUVOdmJXMTFibWwwZVRBZUZ3MHlNekV3TWpjd09UTXhOVGxhRncwME9ERXdNakF3T1RNeE5UbGFNRDB4Ck96QTVCZ05WQkFNVE1pOURQVlZUTDA4OVR5MVNRVTRnUVd4c2FXRnVZMlV2VDFVOVR5MVNRVTRnVTI5bWRIZGgKY21VZ1EyOXRiWFZ1YVhSNU1JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQkNnS0NBUUVBMks4NwpLb21EcjhGU1BxaHpyc1Z0NnB6VUlhaW1oTFNDTWQwMndtejFTZTlraGc1SmhvNXU4MnBNVTFhcUxySW0yS2xkCjFiSjhuVTU1eXB2bHVqMCtTV2Vhbi9TUGtGK2JJc2tlYXh3ME4xR2RpemJONFc0bXVyQ1NqMDVSRTNyRFRNTHcKNzM1NWhBK3VrUXFmeVgzYkJNUm55eW9xdGMzRXVwNVp4K2tkenBSS0s2eWlZeW9JUUZUWGxOTkhZNVpUcTh0KwpmR3FLcDZJK2JXd0poUjRYeEJQSHVuQlMrTzIvRmZMd1h6cmFzNVNtVktwWkV4OWgxOXlqMlM4QkRsc3BFTFpoClBQYXBFOGhqbzI5bHJ5RThRV3FuSUVhQWRvK0JMMmNCZHpKbE55L0Ztdk05VXF3bmtWTjR0Y0FLNGtJck53Y3kKUWNWa0Qvby9XYWJWZ0JKVE9RSURBUUFCbzJFd1h6QU9CZ05WSFE4QkFmOEVCQU1DQXFRd0hRWURWUjBsQkJZdwpGQVlJS3dZQkJRVUhBd0VHQ0NzR0FRVUZCd01DTUE4R0ExVWRFd0VCL3dRRk1BTUJBZjh3SFFZRFZSME9CQllFCkZPdk9VZFEyOHVUUlJaN1UwS25JQWJSVzdTVERNQTBHQ1NxR1NJYjNEUUVCQ3dVQUE0SUJBUUMrb00wTXhhY0wKYTdUc0dHenZYRlRiYXF6dFBGYTB5S2c2TS9kVFRTc0VEdy8yMXBEMWh4REZTakpidTVkaGhnV0I0c2lJNlhvYwo5WFp5Q2FUMTB1aFEyRFlFUGFlTlFBYVljblRPanhLRWR6UDc1TG5oY0VXOHpVZUxLaVhhLzNiMldwVWxwYWFYClMwM3pFZmxMZDB2WkF0aXlucmwrdEJacG9qWTdvK1Qyb0ZPU3JrN2RHSWY3WUxEYmxiYzl3ZUcwV2U1a2xqNDIKMzFSSFNDbDBBcWZ3Zm1lbGhnY2VlNGlUeFJ2dUh4NnN0d0txS0VGbExlbVFyTXQzYzVHY3JVaUxwODdrZ1Z6TwozTklpOUV6bFFFaFBKdjJGWmd4K0JCaDM3Zlo4ZSt1ckd3L3pyTGlqUitZclNtNXhvazNXbkNXMTQwWjhmR2RECnFDN3l1K0lLQkxLYgotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg=="),\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "secret-ric-ca-cert",\r
+                       Namespace: "ricplt",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Secret",\r
+               },\r
+       }\r
+\r
+       secret3 := &corev1.Secret{\r
+               Data: map[string][]uint8{\r
+                       "tls.crt": getDataForSecret("LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURpekNDQW5PZ0F3SUJBZ0lSQU5JK3FNaFNrQ3JvZkdxL2xlZWRXbGN3RFFZSktvWklodmNOQVFFTEJRQXcKUFRFN01Ea0dBMVVFQXhNeUwwTTlWVk12VHoxUExWSkJUaUJCYkd4cFlXNWpaUzlQVlQxUExWSkJUaUJUYjJaMApkMkZ5WlNCRGIyMXRkVzVwZEhrd0hoY05Nak14TURJM01Ea3pNVFU1V2hjTk5EZ3hNREl3TURrek1UVTVXakJOCk1Vc3dTUVlEVlFRREUwSXZRejFWVXk5UFBVOHRVa0ZPSUVGc2JHbGhibU5sTDA5VlBVOHRVa0ZPSUZOdlpuUjMKWVhKbElFTnZiVzExYm1sMGVTOURUajFTU1VNdFVHeGhkR1p2Y20wd2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQQpBNElCRHdBd2dnRUtBb0lCQVFDbndiZ3JWT1JiQjQ1c2lpbXJWc0FmMndWcmxWcGprQXZCRUdEdjk0TzlpVDFOCjR2bjFjSU5MdWo0cU9BU2hFdHNnYkxWWWN0bmNlTWc0Ujh1NkV4Wll0ZDV0UmZqQ2oxN3ZXYTU2NzgvQnlBQ04KNEJ1QnM1eExhTjU0SjdMMWdreFh4Sk1kTXlTY2l4aDY1d1RRRnd5blYybk16ZHZsZUV5ODRTZitmKzF6TmdoVwpUZ2ZLVVpCa1VBbk5KQlk4K1dkV2FLd2tEeGwvR3Z0RkpKV0owcWVhNmdBQVlvcU45d2JKQ2FTTzFQcGlEVXFTCmQwYnpyUS8vNnBrV1RVRW1kWEhQb083amV3Z21GZzE3ODV2V1ErbVZzMWZlbVBmZUVWVzMrUXQ1M2dGbTliNVEKejVzN1FuRGxRVWFCcDJYdVdPTGRYL1JXVnJqQ3JqVmV2b0xEKzc5cEFnTUJBQUdqZGpCME1BNEdBMVVkRHdFQgovd1FFQXdJRm9EQWRCZ05WSFNVRUZqQVVCZ2dyQmdFRkJRY0RBUVlJS3dZQkJRVUhBd0l3REFZRFZSMFRBUUgvCkJBSXdBREFmQmdOVkhTTUVHREFXZ0JUcnpsSFVOdkxrMFVXZTFOQ3B5QUcwVnUwa3d6QVVCZ05WSFJFRURUQUwKZ2dseWFXTXRaVzUwY25rd0RRWUpLb1pJaHZjTkFRRUxCUUFEZ2dFQkFDU2JaamEwWjRVM29pVVZucFBHWXU1Kwp5MEJ4RWhiN1VSOU05bU1pcnpCY2NVYktyV0F0b2RWaHFLNkJ1NDVaU01hVnhFNXVWLzRNb1BtRnhqVnY4Y2pyClM2UmtsOHVQcFNwZVBQU3IwTjJaVzBvenFHdHgrWitMeGwwQkVTeXNpbjZVTVdLNGg0TG1PaWFyY00weStMMEgKcWlFMlBxbHBuNXBaRUtLMkNzNkdIS3QxbzNCTUVQUGpQclRjT2FvN05kblhkTlZQajk2WVlZWHhON3hvTlNJbgo3VG83YXJOdHpKT1M1ckFYZm9PUElFUGxPWUhPZWE2MlFWYUlmZVc3TmRqS2Q3blNEZUkwUVdEL2dXdlV6a1pICmhMZ3IrMVRXZzNldFlZSHB0VnUxM2R6NUFSdzBxYU5sZkZTNjBGVFhXTi9jcVRpSXkvUjVHTmswNEtNbjRqZz0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo="),\r
+                       "tls.key": getDataForSecret("LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFb2dJQkFBS0NBUUVBcDhHNEsxVGtXd2VPYklvcHExYkFIOXNGYTVWYVk1QUx3UkJnNy9lRHZZazlUZUw1CjlYQ0RTN28rS2pnRW9STGJJR3kxV0hMWjNIaklPRWZMdWhNV1dMWGViVVg0d285ZTcxbXVldS9Qd2NnQWplQWIKZ2JPY1MyamVlQ2V5OVlKTVY4U1RIVE1rbklzWWV1Y0UwQmNNcDFkcHpNM2I1WGhNdk9Fbi9uL3RjellJVms0SAp5bEdRWkZBSnpTUVdQUGxuVm1pc0pBOFpmeHI3UlNTVmlkS25tdW9BQUdLS2pmY0d5UW1ranRUNllnMUtrbmRHCjg2MFAvK3FaRmsxQkpuVnh6NkR1NDNzSUpoWU5lL09iMWtQcGxiTlgzcGozM2hGVnQva0xlZDRCWnZXK1VNK2IKTzBKdzVVRkdnYWRsN2xqaTNWLzBWbGE0d3E0MVhyNkN3L3UvYVFJREFRQUJBb0lCQURCVE5ybU16K2VGS3JzTApwZXRNcHpYR0F5NjFySDhuM0tyMkMrYTB0NGVmQkVEdWxMRG1nM3dLSDZSTDFOR052QUFBTU5GVTdIdDljN2Y2CnZxNVFsMHhndjcxY3ZjZFdRN1BSY3RqSlFtRUJPMStqWW1rZmszT0p0eVNIMHg2ME5VZkhRZFhVaU1ScnNWYWUKUEIyeHRoeHlxdkNya0ovdTRyUTZiQ245TWlyUXV5bjFUY1h6STZxUnZoRFRlYmRNTTVsbTJTc09MbFp0bW9QTgpoQndDTFFpYVNMWUlocmQ1UW5LS2k1TWZSakh0b0RQbUNvOTZsL2R6VDlUYk5HcllHMkplb1FzdkJBazFsUHpQCmJKM2VsVkNGd3VKaGhqME5kS05kS3pGakwxSTlKTWNUblJWVTNXa2Q4OWJNcDZFNm5pWGFEQmVVbkQ0bmZIT2QKQWlmdFFvRUNnWUVBM3R5WDhZRlFzWWNCejdZb09Fd21XZDFidUtKYW1nUlBrUW9La0w5alordEVpcm5OOXgwNword3BNUkZvUnd3Unc0dVBvbW9sNnFZRUs2TWFNL3BmeFUvMk9hMVJqcEx4SEN5KzBCam1OUUNadFQ4VVB6NjRMCktXaExpa1YzYTErQ2JlQ253RDFoU0dvQWhyaGc4aldaREx4M21jUUV3M1I3M3NZOURIZHp1ZGtDZ1lFQXdMT0MKNmtRT0g3bmhscnppTkRudzk2eDIxWFY3bE1ZejZNN3V5bDN6Uzc1MmtEQW1HdzNueUJIU2ZMbzFmdmszQUZIegoxcmNSRUZJcG5UNXJ1UldZRmxzcUJYcnd1Y1l2VDBsVHoyb2xPbGx3M0w4U09oNms4REEvaWU0SVZZdWRKWTdyCkNWYzJ1Ymtwdy9kUmd0NnNabGpGdU9MK0xGSmMvV3h0NldKR3FCRUNnWUJzWlZieC9EZkhZU2NjWkRrRHlPWU8KWjRBcE9hNWZveUVnSm9ZbENUSE1aYjRjeTJyR2VzMmx1TWlIcGxkbFIwK3d5N0ZqR09NMGRyTmJyTmIvTGVBUApQaEI3Vzd4cmI3Z09WTkYzQlo4U1NKNTZZaHJpcElDQlQxME9qK01ac29hNThyOGszYlhuaHNkaXYyTkg2NUhaCmhBR1lKS004ZmZlUnoxSDZNazl6WVFLQmdGR3RSTFlLOW5tWURmZ1lRMENqdG5Fa0ZwSlBZM3docm1ybEd1MkgKZU5JSC9yVUswM3Z3SHVmOE5kMU1COVN6eVE1SHJqUzZEMjk5ZzhuMFpUQmo2THpCRTBTVFlXazhpVnp2MWFnNgpjMkVSKy9aMHZrTUlMaHpvTm1ZK0VDWkNNTzkwYmtiZFFvTGg2c1AzRmdPRVlrcFhJaWRGZnpwR0JzZ2JwMUtlCnB4Z2hBb0dBQXA0V3UxaE1jeWVXTmJ2amVBZHZud1daRmdGVUtUbm03MW5leXVyRDF5QmFOeERkRDZCbHEwYWQKRklpT0hseWJsRTQ4L3ZQSi9VQ1doUkUxZEk3VFVKaTBFVDArRUFJS1Iwb0pwRTZrQnV2M0NqUG9EeXJ5QUREMQo4Ynh3d0E2Qkx2NUxIbysramt5R2xXRnFnd01HYktJUTdmM2RuZzEwRFRDeFZPeXJMQkE9Ci0tLS0tRU5EIFJTQSBQUklWQVRFIEtFWS0tLS0tCg=="),\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "secret-plt-ingress-cert",\r
+                       Namespace: "ricplt",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Secret",\r
+               },\r
+       }\r
+\r
+       secret4 := &corev1.Secret{\r
+               Data: map[string][]uint8{\r
+                       "tls.crt": getDataForSecret("LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURnakNDQW1xZ0F3SUJBZ0lRV3YrZWhsNzZBd1FYcURQTDB6SFk2akFOQmdrcWhraUc5dzBCQVFzRkFEQTkKTVRzd09RWURWUVFERXpJdlF6MVZVeTlQUFU4dFVrRk9JRUZzYkdsaGJtTmxMMDlWUFU4dFVrRk9JRk52Wm5SMwpZWEpsSUVOdmJXMTFibWwwZVRBZUZ3MHlNekV3TWpjd09UTXhOVGxhRncwME9ERXdNakF3T1RNeE5UbGFNRVV4ClF6QkJCZ05WQkFNVE9pOURQVlZUTDA4OVR5MVNRVTRnUVd4c2FXRnVZMlV2VDFVOVR5MVNRVTRnVTI5bWRIZGgKY21VZ1EyOXRiWFZ1YVhSNUwwTk9QV2hsYkcwd2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQUE0SUJEd0F3Z2dFSwpBb0lCQVFEQk8yek5aUUVjZ3p5Q0NPQWhrR2NBZU1udGl5cHFmRlZ1UDFSK0RTanZLVTJDZ3Z3YjR3ckY4V3VPCldsVnUwKzZVR0tmWXZ2eGsyaFhzRkJFN1N6anRYc01tS1JmTVRkM0pWRHVRb3RkYTBEWkNQbUQ4Q01nV2tkUTUKVTdqZWIrMmhIcDlXT2tCa1JsazJNQ3NkaFl4UnJ5cExtUnNMODdRV1VjWHRvYUdDOUMvaW9lZS9tU3V6YnZidwpPZUJ6ZEt2blZqWCtXRmVvOGlvRGRlQk0wTmdGZExhMkd0MUdVYm5iWTZhL01aeS96SlhINjFVbmYwK09lN2lFCjR1cWhEUFYxMGZPUUkreFBQOGFuVThnNyt3eHY3enduaXJ0Tlk3M3l5S3RHUVlHaDhQZXk1SldlTG9RYzFaaUIKcm45eVpNTjNNdGh6Ynp4V2RRbXhrcEJCbnlSbEFnTUJBQUdqZGpCME1BNEdBMVVkRHdFQi93UUVBd0lGb0RBZApCZ05WSFNVRUZqQVVCZ2dyQmdFRkJRY0RBUVlJS3dZQkJRVUhBd0l3REFZRFZSMFRBUUgvQkFJd0FEQWZCZ05WCkhTTUVHREFXZ0JUcnpsSFVOdkxrMFVXZTFOQ3B5QUcwVnUwa3d6QVVCZ05WSFJFRURUQUxnZ2xoZFhndFpXNTAKY25rd0RRWUpLb1pJaHZjTkFRRUxCUUFEZ2dFQkFNQVh1ei9OYm5xVW9jRmNXQVFEM2k2bUs0THVJcXZKa0ViWQpyeUlvRUl6bWFzclBaRmh2dlN0bmYrUVlSc3prQVdndm5pelBLdmJ0MWMyQ1ZpUDQvRWJ6cjFUWnRuZ1pBWDljCnZBcjc1djVnc3k3RzdTS3I4cEYrTnpqc1BMajlFYUp6UnJCZ1RsRnY5cFg3R2tnVVlvQWRKSzJMaGZLS1BVR1gKZ0M4cGJIajB1YmpDaFV6L2JVR3gvTlBCQ1dPcHB2RzRXVzIwQytVOWtkNHZNWENEZVBhYklmWXJIL2dkTDZNVwpCZEY1VDk1SXJNUHVlL1JDZzcwbWhOemZlMmlsaGJkdmR6OFhEaStjQm8yQXA5QVdaZGZVWTEzVkFLSmlsaG16CkRTTWN2ZWFJVUdUOTc1VEo3ei9xa1R1elNLclNxbUVYY3pRSnYvWjV3OXc1c1hLcm4xZz0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo="),\r
+                       "tls.key": getDataForSecret("LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBd1R0c3pXVUJISU04Z2dqZ0laQm5BSGpKN1lzcWFueFZiajlVZmcwbzd5bE5nb0w4CkcrTUt4ZkZyamxwVmJ0UHVsQmluMkw3OFpOb1Y3QlFSTzBzNDdWN0RKaWtYekUzZHlWUTdrS0xYV3RBMlFqNWcKL0FqSUZwSFVPVk80M20vdG9SNmZWanBBWkVaWk5qQXJIWVdNVWE4cVM1a2JDL08wRmxIRjdhR2hndlF2NHFIbgp2NWtyczI3MjhEbmdjM1NyNTFZMS9saFhxUElxQTNYZ1RORFlCWFMydGhyZFJsRzUyMk9tdnpHY3Y4eVZ4K3RWCkozOVBqbnU0aE9McW9RejFkZEh6a0NQc1R6L0dwMVBJTy9zTWIrODhKNHE3VFdPOThzaXJSa0dCb2ZEM3N1U1YKbmk2RUhOV1lnYTUvY21URGR6TFljMjg4Vm5VSnNaS1FRWjhrWlFJREFRQUJBb0lCQVFDMlhUb0xBbWN4SEo1UApic2J3aGxMZmZCKyt3eGR0MWhmZWE0QjNVajR1c0lGSlNndGEya1RCbVYzVHhHZGFxRU5DbTU1VkRiSXdFQzZlClZqWUpDcTRZUDlYWFB2TUp5dmNrMmcwNUxLWW9POWJwWCt1eUVTdWRPVlhjSUtxWnEzTE9HNU52RXB6UXhoL04KNTFuWmk3OXBHL0xEMUNSVmZGT2F1T1FlcCt0QkpVVlRxc2FSQ2RyZEhJUndtK1NDak9WTWFhTnRkeWhKSjdzNgp3MndIMzJZRWZ4Z2Z4eWEvTURtMDBiTGNBSjlyeTh1VWdjVjdvcGJUc3ZkQ2hhVytYbWduc040WlZTanR2emFGCmhjSERUSGxJaGc5RzZPanorME91SjZ2d0tmR2ttcjlnWi9RZWRuNERKa01FZ1o4RVdWZEsvL2FGNWZkbmtXS3cKRGRTVmNlQ2xBb0dCQU9zTXJBZ2dFSmdvQjN3VGcrMU00TzRGT3NIZ2RSUmh1cUpkdllTaTlkQ0d5eCtNSUE5WQp1SzhkVEZzM0dwZGN2djNaWExUay9yaWVNN0xFREdPeS9XdTNsYStZNEhaYmR4OEhjMzZmNEtyY2RnR1J6WlJrClgybzZUVDhGSGMzVVpnaFBEVGRsM2srcWZvZHo1OEhqeHdoMmszUTdLNmNDMlc3VFBISTJHSk56QW9HQkFOSjAKa2VFRHY3VThhUVJ3K01QTmxsN2dOanZDamZyc1pCNFVwR0E4WUxnQWdZT3FjS2ZRb3pNUFprbnVXWVV3UjRORwo4SDhSVDJ1Mnk4RUJ4Mm9nYjRLeXVwempDaFhMd0VLRHRZOUczMGxhMG1tSm9hK3hCeTBSc1RWaGEzczRoWE4zCjVLMUV3OVJWTHhxbEVOZXk4bFVyY3BTcXgzeTMyTFFaRCs0WUErTEhBb0dCQUp5VWduMmZMcTdONjc2Q0daNloKV2pYMWtlRFpyK1QxL2Fod0hmSWZ4UFUyOWxWN3VWZS8yTGYvSW9DWlFzT1dhejBiOGFBbjlHLzBJNmh3NVhmOQpJc2tCTVZ3YTBWekhMYUdrQ3hKTld4TTNiZjA1cmVPdXdjazRNWUZMM1VEaXYxM0ZtNTVONUR6WjdSUTY2Q2JICm9DMUpJSTJMWlZjS2xPSTVJY2xMdEM5MUFvR0FSek1nMTF1SlZDdG43QlM4VktJTktYUDVaU1poR204M1ArWUQKNW5zR3pibCtGNmxtQzZCT1ZrdnpjemVzR1o5SDBtWUJuenVmL3ZVTTRmTlVIOWR4WW1wTk1CNnZuc2diOTJUUAoyL1ZDUFhMNGxMUDNlNVVNdEhhejJUZG9RWHZSeWtyWmxyVVkrNUVHS3FHRm5UUHhRRmMrb0lWV2tCOHl0VnQxClJEdmp0S2tDZ1lBNi9vSFhpd05BbGEvM0Y3Z3QwUzFmdWl5Vkd5NVI5cHFRY0VxZmtVMlFpUmpORmU3b1RiRjAKNFZPVFJzb1AzMURWbGgzV0ZISk13VDN6UDNEOVFqMHpiWjIxQ0ZUQTZXOVY1SnJaWDkwYmJIbXZteFVXdFZzYgpzZ1FwQ3cwZU9ZME11VGRrNkdsM3pQNzB3UStkUGRLVFp2UWNZRmlJWkkvVkN6SlNOK1NrQVE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo="),\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "secret-aux-ingress-cert",\r
+                       Namespace: "ricplt",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Secret",\r
+               },\r
+       }\r
+\r
+       secret5 := &corev1.Secret{\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Secret",\r
+               },\r
+               Data: map[string][]uint8{\r
+                       "ca.crt": getDataForSecret("LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURaVENDQWsyZ0F3SUJBZ0lRR3J6MUJKT3lYZExpSGErYWE2UERIVEFOQmdrcWhraUc5dzBCQVFzRkFEQTkKTVRzd09RWURWUVFERXpJdlF6MVZVeTlQUFU4dFVrRk9JRUZzYkdsaGJtTmxMMDlWUFU4dFVrRk9JRk52Wm5SMwpZWEpsSUVOdmJXMTFibWwwZVRBZUZ3MHlNekV3TWpjd09UTXhOVGxhRncwME9ERXdNakF3T1RNeE5UbGFNRDB4Ck96QTVCZ05WQkFNVE1pOURQVlZUTDA4OVR5MVNRVTRnUVd4c2FXRnVZMlV2VDFVOVR5MVNRVTRnVTI5bWRIZGgKY21VZ1EyOXRiWFZ1YVhSNU1JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQkNnS0NBUUVBMks4NwpLb21EcjhGU1BxaHpyc1Z0NnB6VUlhaW1oTFNDTWQwMndtejFTZTlraGc1SmhvNXU4MnBNVTFhcUxySW0yS2xkCjFiSjhuVTU1eXB2bHVqMCtTV2Vhbi9TUGtGK2JJc2tlYXh3ME4xR2RpemJONFc0bXVyQ1NqMDVSRTNyRFRNTHcKNzM1NWhBK3VrUXFmeVgzYkJNUm55eW9xdGMzRXVwNVp4K2tkenBSS0s2eWlZeW9JUUZUWGxOTkhZNVpUcTh0KwpmR3FLcDZJK2JXd0poUjRYeEJQSHVuQlMrTzIvRmZMd1h6cmFzNVNtVktwWkV4OWgxOXlqMlM4QkRsc3BFTFpoClBQYXBFOGhqbzI5bHJ5RThRV3FuSUVhQWRvK0JMMmNCZHpKbE55L0Ztdk05VXF3bmtWTjR0Y0FLNGtJck53Y3kKUWNWa0Qvby9XYWJWZ0JKVE9RSURBUUFCbzJFd1h6QU9CZ05WSFE4QkFmOEVCQU1DQXFRd0hRWURWUjBsQkJZdwpGQVlJS3dZQkJRVUhBd0VHQ0NzR0FRVUZCd01DTUE4R0ExVWRFd0VCL3dRRk1BTUJBZjh3SFFZRFZSME9CQllFCkZPdk9VZFEyOHVUUlJaN1UwS25JQWJSVzdTVERNQTBHQ1NxR1NJYjNEUUVCQ3dVQUE0SUJBUUMrb00wTXhhY0wKYTdUc0dHenZYRlRiYXF6dFBGYTB5S2c2TS9kVFRTc0VEdy8yMXBEMWh4REZTakpidTVkaGhnV0I0c2lJNlhvYwo5WFp5Q2FUMTB1aFEyRFlFUGFlTlFBYVljblRPanhLRWR6UDc1TG5oY0VXOHpVZUxLaVhhLzNiMldwVWxwYWFYClMwM3pFZmxMZDB2WkF0aXlucmwrdEJacG9qWTdvK1Qyb0ZPU3JrN2RHSWY3WUxEYmxiYzl3ZUcwV2U1a2xqNDIKMzFSSFNDbDBBcWZ3Zm1lbGhnY2VlNGlUeFJ2dUh4NnN0d0txS0VGbExlbVFyTXQzYzVHY3JVaUxwODdrZ1Z6TwozTklpOUV6bFFFaFBKdjJGWmd4K0JCaDM3Zlo4ZSt1ckd3L3pyTGlqUitZclNtNXhvazNXbkNXMTQwWjhmR2RECnFDN3l1K0lLQkxLYgotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg=="),\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Namespace: "ricxapp",\r
+                       Name:      "secret-ric-ca-cert",\r
+               },\r
+       }\r
+\r
+       secret6 := &corev1.Secret{\r
+               Data: map[string][]uint8{\r
+                       "tls.key": getDataForSecret("LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFb2dJQkFBS0NBUUVBcDhHNEsxVGtXd2VPYklvcHExYkFIOXNGYTVWYVk1QUx3UkJnNy9lRHZZazlUZUw1CjlYQ0RTN28rS2pnRW9STGJJR3kxV0hMWjNIaklPRWZMdWhNV1dMWGViVVg0d285ZTcxbXVldS9Qd2NnQWplQWIKZ2JPY1MyamVlQ2V5OVlKTVY4U1RIVE1rbklzWWV1Y0UwQmNNcDFkcHpNM2I1WGhNdk9Fbi9uL3RjellJVms0SAp5bEdRWkZBSnpTUVdQUGxuVm1pc0pBOFpmeHI3UlNTVmlkS25tdW9BQUdLS2pmY0d5UW1ranRUNllnMUtrbmRHCjg2MFAvK3FaRmsxQkpuVnh6NkR1NDNzSUpoWU5lL09iMWtQcGxiTlgzcGozM2hGVnQva0xlZDRCWnZXK1VNK2IKTzBKdzVVRkdnYWRsN2xqaTNWLzBWbGE0d3E0MVhyNkN3L3UvYVFJREFRQUJBb0lCQURCVE5ybU16K2VGS3JzTApwZXRNcHpYR0F5NjFySDhuM0tyMkMrYTB0NGVmQkVEdWxMRG1nM3dLSDZSTDFOR052QUFBTU5GVTdIdDljN2Y2CnZxNVFsMHhndjcxY3ZjZFdRN1BSY3RqSlFtRUJPMStqWW1rZmszT0p0eVNIMHg2ME5VZkhRZFhVaU1ScnNWYWUKUEIyeHRoeHlxdkNya0ovdTRyUTZiQ245TWlyUXV5bjFUY1h6STZxUnZoRFRlYmRNTTVsbTJTc09MbFp0bW9QTgpoQndDTFFpYVNMWUlocmQ1UW5LS2k1TWZSakh0b0RQbUNvOTZsL2R6VDlUYk5HcllHMkplb1FzdkJBazFsUHpQCmJKM2VsVkNGd3VKaGhqME5kS05kS3pGakwxSTlKTWNUblJWVTNXa2Q4OWJNcDZFNm5pWGFEQmVVbkQ0bmZIT2QKQWlmdFFvRUNnWUVBM3R5WDhZRlFzWWNCejdZb09Fd21XZDFidUtKYW1nUlBrUW9La0w5alordEVpcm5OOXgwNword3BNUkZvUnd3Unc0dVBvbW9sNnFZRUs2TWFNL3BmeFUvMk9hMVJqcEx4SEN5KzBCam1OUUNadFQ4VVB6NjRMCktXaExpa1YzYTErQ2JlQ253RDFoU0dvQWhyaGc4aldaREx4M21jUUV3M1I3M3NZOURIZHp1ZGtDZ1lFQXdMT0MKNmtRT0g3bmhscnppTkRudzk2eDIxWFY3bE1ZejZNN3V5bDN6Uzc1MmtEQW1HdzNueUJIU2ZMbzFmdmszQUZIegoxcmNSRUZJcG5UNXJ1UldZRmxzcUJYcnd1Y1l2VDBsVHoyb2xPbGx3M0w4U09oNms4REEvaWU0SVZZdWRKWTdyCkNWYzJ1Ymtwdy9kUmd0NnNabGpGdU9MK0xGSmMvV3h0NldKR3FCRUNnWUJzWlZieC9EZkhZU2NjWkRrRHlPWU8KWjRBcE9hNWZveUVnSm9ZbENUSE1aYjRjeTJyR2VzMmx1TWlIcGxkbFIwK3d5N0ZqR09NMGRyTmJyTmIvTGVBUApQaEI3Vzd4cmI3Z09WTkYzQlo4U1NKNTZZaHJpcElDQlQxME9qK01ac29hNThyOGszYlhuaHNkaXYyTkg2NUhaCmhBR1lKS004ZmZlUnoxSDZNazl6WVFLQmdGR3RSTFlLOW5tWURmZ1lRMENqdG5Fa0ZwSlBZM3docm1ybEd1MkgKZU5JSC9yVUswM3Z3SHVmOE5kMU1COVN6eVE1SHJqUzZEMjk5ZzhuMFpUQmo2THpCRTBTVFlXazhpVnp2MWFnNgpjMkVSKy9aMHZrTUlMaHpvTm1ZK0VDWkNNTzkwYmtiZFFvTGg2c1AzRmdPRVlrcFhJaWRGZnpwR0JzZ2JwMUtlCnB4Z2hBb0dBQXA0V3UxaE1jeWVXTmJ2amVBZHZud1daRmdGVUtUbm03MW5leXVyRDF5QmFOeERkRDZCbHEwYWQKRklpT0hseWJsRTQ4L3ZQSi9VQ1doUkUxZEk3VFVKaTBFVDArRUFJS1Iwb0pwRTZrQnV2M0NqUG9EeXJ5QUREMQo4Ynh3d0E2Qkx2NUxIbysramt5R2xXRnFnd01HYktJUTdmM2RuZzEwRFRDeFZPeXJMQkE9Ci0tLS0tRU5EIFJTQSBQUklWQVRFIEtFWS0tLS0tCg=="),\r
+                       "tls.crt": getDataForSecret("LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURpekNDQW5PZ0F3SUJBZ0lSQU5JK3FNaFNrQ3JvZkdxL2xlZWRXbGN3RFFZSktvWklodmNOQVFFTEJRQXcKUFRFN01Ea0dBMVVFQXhNeUwwTTlWVk12VHoxUExWSkJUaUJCYkd4cFlXNWpaUzlQVlQxUExWSkJUaUJUYjJaMApkMkZ5WlNCRGIyMXRkVzVwZEhrd0hoY05Nak14TURJM01Ea3pNVFU1V2hjTk5EZ3hNREl3TURrek1UVTVXakJOCk1Vc3dTUVlEVlFRREUwSXZRejFWVXk5UFBVOHRVa0ZPSUVGc2JHbGhibU5sTDA5VlBVOHRVa0ZPSUZOdlpuUjMKWVhKbElFTnZiVzExYm1sMGVTOURUajFTU1VNdFVHeGhkR1p2Y20wd2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQQpBNElCRHdBd2dnRUtBb0lCQVFDbndiZ3JWT1JiQjQ1c2lpbXJWc0FmMndWcmxWcGprQXZCRUdEdjk0TzlpVDFOCjR2bjFjSU5MdWo0cU9BU2hFdHNnYkxWWWN0bmNlTWc0Ujh1NkV4Wll0ZDV0UmZqQ2oxN3ZXYTU2NzgvQnlBQ04KNEJ1QnM1eExhTjU0SjdMMWdreFh4Sk1kTXlTY2l4aDY1d1RRRnd5blYybk16ZHZsZUV5ODRTZitmKzF6TmdoVwpUZ2ZLVVpCa1VBbk5KQlk4K1dkV2FLd2tEeGwvR3Z0RkpKV0owcWVhNmdBQVlvcU45d2JKQ2FTTzFQcGlEVXFTCmQwYnpyUS8vNnBrV1RVRW1kWEhQb083amV3Z21GZzE3ODV2V1ErbVZzMWZlbVBmZUVWVzMrUXQ1M2dGbTliNVEKejVzN1FuRGxRVWFCcDJYdVdPTGRYL1JXVnJqQ3JqVmV2b0xEKzc5cEFnTUJBQUdqZGpCME1BNEdBMVVkRHdFQgovd1FFQXdJRm9EQWRCZ05WSFNVRUZqQVVCZ2dyQmdFRkJRY0RBUVlJS3dZQkJRVUhBd0l3REFZRFZSMFRBUUgvCkJBSXdBREFmQmdOVkhTTUVHREFXZ0JUcnpsSFVOdkxrMFVXZTFOQ3B5QUcwVnUwa3d6QVVCZ05WSFJFRURUQUwKZ2dseWFXTXRaVzUwY25rd0RRWUpLb1pJaHZjTkFRRUxCUUFEZ2dFQkFDU2JaamEwWjRVM29pVVZucFBHWXU1Kwp5MEJ4RWhiN1VSOU05bU1pcnpCY2NVYktyV0F0b2RWaHFLNkJ1NDVaU01hVnhFNXVWLzRNb1BtRnhqVnY4Y2pyClM2UmtsOHVQcFNwZVBQU3IwTjJaVzBvenFHdHgrWitMeGwwQkVTeXNpbjZVTVdLNGg0TG1PaWFyY00weStMMEgKcWlFMlBxbHBuNXBaRUtLMkNzNkdIS3QxbzNCTUVQUGpQclRjT2FvN05kblhkTlZQajk2WVlZWHhON3hvTlNJbgo3VG83YXJOdHpKT1M1ckFYZm9PUElFUGxPWUhPZWE2MlFWYUlmZVc3TmRqS2Q3blNEZUkwUVdEL2dXdlV6a1pICmhMZ3IrMVRXZzNldFlZSHB0VnUxM2R6NUFSdzBxYU5sZkZTNjBGVFhXTi9jcVRpSXkvUjVHTmswNEtNbjRqZz0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo="),\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "secret-plt-ingress-cert",\r
+                       Namespace: "ricxapp",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Secret",\r
+               },\r
+       }\r
+\r
+       secret7 := &corev1.Secret{\r
+               Data: map[string][]uint8{\r
+                       "tls.crt": getDataForSecret("LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURnakNDQW1xZ0F3SUJBZ0lRV3YrZWhsNzZBd1FYcURQTDB6SFk2akFOQmdrcWhraUc5dzBCQVFzRkFEQTkKTVRzd09RWURWUVFERXpJdlF6MVZVeTlQUFU4dFVrRk9JRUZzYkdsaGJtTmxMMDlWUFU4dFVrRk9JRk52Wm5SMwpZWEpsSUVOdmJXMTFibWwwZVRBZUZ3MHlNekV3TWpjd09UTXhOVGxhRncwME9ERXdNakF3T1RNeE5UbGFNRVV4ClF6QkJCZ05WQkFNVE9pOURQVlZUTDA4OVR5MVNRVTRnUVd4c2FXRnVZMlV2VDFVOVR5MVNRVTRnVTI5bWRIZGgKY21VZ1EyOXRiWFZ1YVhSNUwwTk9QV2hsYkcwd2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQUE0SUJEd0F3Z2dFSwpBb0lCQVFEQk8yek5aUUVjZ3p5Q0NPQWhrR2NBZU1udGl5cHFmRlZ1UDFSK0RTanZLVTJDZ3Z3YjR3ckY4V3VPCldsVnUwKzZVR0tmWXZ2eGsyaFhzRkJFN1N6anRYc01tS1JmTVRkM0pWRHVRb3RkYTBEWkNQbUQ4Q01nV2tkUTUKVTdqZWIrMmhIcDlXT2tCa1JsazJNQ3NkaFl4UnJ5cExtUnNMODdRV1VjWHRvYUdDOUMvaW9lZS9tU3V6YnZidwpPZUJ6ZEt2blZqWCtXRmVvOGlvRGRlQk0wTmdGZExhMkd0MUdVYm5iWTZhL01aeS96SlhINjFVbmYwK09lN2lFCjR1cWhEUFYxMGZPUUkreFBQOGFuVThnNyt3eHY3enduaXJ0Tlk3M3l5S3RHUVlHaDhQZXk1SldlTG9RYzFaaUIKcm45eVpNTjNNdGh6Ynp4V2RRbXhrcEJCbnlSbEFnTUJBQUdqZGpCME1BNEdBMVVkRHdFQi93UUVBd0lGb0RBZApCZ05WSFNVRUZqQVVCZ2dyQmdFRkJRY0RBUVlJS3dZQkJRVUhBd0l3REFZRFZSMFRBUUgvQkFJd0FEQWZCZ05WCkhTTUVHREFXZ0JUcnpsSFVOdkxrMFVXZTFOQ3B5QUcwVnUwa3d6QVVCZ05WSFJFRURUQUxnZ2xoZFhndFpXNTAKY25rd0RRWUpLb1pJaHZjTkFRRUxCUUFEZ2dFQkFNQVh1ei9OYm5xVW9jRmNXQVFEM2k2bUs0THVJcXZKa0ViWQpyeUlvRUl6bWFzclBaRmh2dlN0bmYrUVlSc3prQVdndm5pelBLdmJ0MWMyQ1ZpUDQvRWJ6cjFUWnRuZ1pBWDljCnZBcjc1djVnc3k3RzdTS3I4cEYrTnpqc1BMajlFYUp6UnJCZ1RsRnY5cFg3R2tnVVlvQWRKSzJMaGZLS1BVR1gKZ0M4cGJIajB1YmpDaFV6L2JVR3gvTlBCQ1dPcHB2RzRXVzIwQytVOWtkNHZNWENEZVBhYklmWXJIL2dkTDZNVwpCZEY1VDk1SXJNUHVlL1JDZzcwbWhOemZlMmlsaGJkdmR6OFhEaStjQm8yQXA5QVdaZGZVWTEzVkFLSmlsaG16CkRTTWN2ZWFJVUdUOTc1VEo3ei9xa1R1elNLclNxbUVYY3pRSnYvWjV3OXc1c1hLcm4xZz0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo="),\r
+                       "tls.key": getDataForSecret("LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBd1R0c3pXVUJISU04Z2dqZ0laQm5BSGpKN1lzcWFueFZiajlVZmcwbzd5bE5nb0w4CkcrTUt4ZkZyamxwVmJ0UHVsQmluMkw3OFpOb1Y3QlFSTzBzNDdWN0RKaWtYekUzZHlWUTdrS0xYV3RBMlFqNWcKL0FqSUZwSFVPVk80M20vdG9SNmZWanBBWkVaWk5qQXJIWVdNVWE4cVM1a2JDL08wRmxIRjdhR2hndlF2NHFIbgp2NWtyczI3MjhEbmdjM1NyNTFZMS9saFhxUElxQTNYZ1RORFlCWFMydGhyZFJsRzUyMk9tdnpHY3Y4eVZ4K3RWCkozOVBqbnU0aE9McW9RejFkZEh6a0NQc1R6L0dwMVBJTy9zTWIrODhKNHE3VFdPOThzaXJSa0dCb2ZEM3N1U1YKbmk2RUhOV1lnYTUvY21URGR6TFljMjg4Vm5VSnNaS1FRWjhrWlFJREFRQUJBb0lCQVFDMlhUb0xBbWN4SEo1UApic2J3aGxMZmZCKyt3eGR0MWhmZWE0QjNVajR1c0lGSlNndGEya1RCbVYzVHhHZGFxRU5DbTU1VkRiSXdFQzZlClZqWUpDcTRZUDlYWFB2TUp5dmNrMmcwNUxLWW9POWJwWCt1eUVTdWRPVlhjSUtxWnEzTE9HNU52RXB6UXhoL04KNTFuWmk3OXBHL0xEMUNSVmZGT2F1T1FlcCt0QkpVVlRxc2FSQ2RyZEhJUndtK1NDak9WTWFhTnRkeWhKSjdzNgp3MndIMzJZRWZ4Z2Z4eWEvTURtMDBiTGNBSjlyeTh1VWdjVjdvcGJUc3ZkQ2hhVytYbWduc040WlZTanR2emFGCmhjSERUSGxJaGc5RzZPanorME91SjZ2d0tmR2ttcjlnWi9RZWRuNERKa01FZ1o4RVdWZEsvL2FGNWZkbmtXS3cKRGRTVmNlQ2xBb0dCQU9zTXJBZ2dFSmdvQjN3VGcrMU00TzRGT3NIZ2RSUmh1cUpkdllTaTlkQ0d5eCtNSUE5WQp1SzhkVEZzM0dwZGN2djNaWExUay9yaWVNN0xFREdPeS9XdTNsYStZNEhaYmR4OEhjMzZmNEtyY2RnR1J6WlJrClgybzZUVDhGSGMzVVpnaFBEVGRsM2srcWZvZHo1OEhqeHdoMmszUTdLNmNDMlc3VFBISTJHSk56QW9HQkFOSjAKa2VFRHY3VThhUVJ3K01QTmxsN2dOanZDamZyc1pCNFVwR0E4WUxnQWdZT3FjS2ZRb3pNUFprbnVXWVV3UjRORwo4SDhSVDJ1Mnk4RUJ4Mm9nYjRLeXVwempDaFhMd0VLRHRZOUczMGxhMG1tSm9hK3hCeTBSc1RWaGEzczRoWE4zCjVLMUV3OVJWTHhxbEVOZXk4bFVyY3BTcXgzeTMyTFFaRCs0WUErTEhBb0dCQUp5VWduMmZMcTdONjc2Q0daNloKV2pYMWtlRFpyK1QxL2Fod0hmSWZ4UFUyOWxWN3VWZS8yTGYvSW9DWlFzT1dhejBiOGFBbjlHLzBJNmh3NVhmOQpJc2tCTVZ3YTBWekhMYUdrQ3hKTld4TTNiZjA1cmVPdXdjazRNWUZMM1VEaXYxM0ZtNTVONUR6WjdSUTY2Q2JICm9DMUpJSTJMWlZjS2xPSTVJY2xMdEM5MUFvR0FSek1nMTF1SlZDdG43QlM4VktJTktYUDVaU1poR204M1ArWUQKNW5zR3pibCtGNmxtQzZCT1ZrdnpjemVzR1o5SDBtWUJuenVmL3ZVTTRmTlVIOWR4WW1wTk1CNnZuc2diOTJUUAoyL1ZDUFhMNGxMUDNlNVVNdEhhejJUZG9RWHZSeWtyWmxyVVkrNUVHS3FHRm5UUHhRRmMrb0lWV2tCOHl0VnQxClJEdmp0S2tDZ1lBNi9vSFhpd05BbGEvM0Y3Z3QwUzFmdWl5Vkd5NVI5cHFRY0VxZmtVMlFpUmpORmU3b1RiRjAKNFZPVFJzb1AzMURWbGgzV0ZISk13VDN6UDNEOVFqMHpiWjIxQ0ZUQTZXOVY1SnJaWDkwYmJIbXZteFVXdFZzYgpzZ1FwQ3cwZU9ZME11VGRrNkdsM3pQNzB3UStkUGRLVFp2UWNZRmlJWkkvVkN6SlNOK1NrQVE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo="),\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Namespace: "ricxapp",\r
+                       Name:      "secret-aux-ingress-cert",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Secret",\r
+               },\r
+       }\r
+\r
+       secret8 := &corev1.Secret{\r
+               Data: map[string][]uint8{\r
+                       "ca.crt": getDataForSecret("LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURaakNDQWs2Z0F3SUJBZ0lSQU0vRGZDOXJ0R0tBdHh3ZlVBL0tOR3N3RFFZSktvWklodmNOQVFFTEJRQXcKUFRFN01Ea0dBMVVFQXhNeUwwTTlWVk12VHoxUExWSkJUaUJCYkd4cFlXNWpaUzlQVlQxUExWSkJUaUJUYjJaMApkMkZ5WlNCRGIyMXRkVzVwZEhrd0hoY05Nak14TURJM01Ea3pNakF3V2hjTk5EZ3hNREl3TURrek1qQXdXakE5Ck1Uc3dPUVlEVlFRREV6SXZRejFWVXk5UFBVOHRVa0ZPSUVGc2JHbGhibU5sTDA5VlBVOHRVa0ZPSUZOdlpuUjMKWVhKbElFTnZiVzExYm1sMGVUQ0NBU0l3RFFZSktvWklodmNOQVFFQkJRQURnZ0VQQURDQ0FRb0NnZ0VCQUoydAoxcnF0TkFxNndpV3BxRktDa1lUczVzejJueCtoSGhoQk9iQXZMK1doekZPQXQ3RVFQRnBSKzEzOTNPMFdJM0tmCm1ncmJPNHM1eDhwd0pIekFHNTFnTlh2TFArSjJhREVFcG1JcUIrajQ0ZVpuZytmTzd4c01ua0Z3UGVkdHdMUmcKR1QxdzVqTDZ4YWR1SjhKamx6dXR0ZDcxNTYxMEk5MWhPb1NCVXRJWkRiQmk1NUQ0MlBHUzV0YmNFeWhrYm13QQplR3M5NWVTT1doS0RFTTZvcXVidU5IVWNRczB6ODB2eGc1UlN5OU9lRG1CQi9mVTFtT3dmOTY2NGpKNHhGZUMzCmFLMWh2a1NHbGNJNlhrb2g0TkV2WlpZb21MZGh1QzVlVmtzS0Flay9UUXhXeGlmWHhpWlBPSVh0U0ZacW5rcmEKbmdLSmdyUWdHNTczbVBNVHBHRUNBd0VBQWFOaE1GOHdEZ1lEVlIwUEFRSC9CQVFEQWdLa01CMEdBMVVkSlFRVwpNQlFHQ0NzR0FRVUZCd01CQmdnckJnRUZCUWNEQWpBUEJnTlZIUk1CQWY4RUJUQURBUUgvTUIwR0ExVWREZ1FXCkJCUk42VU5SK3NLV28vUXFzbW04bXZFYmw3ckxGREFOQmdrcWhraUc5dzBCQVFzRkFBT0NBUUVBYXZ0aVBVYVUKbkVTVXU1ZFFsa1RTVnNpMFlWM0Z0UldCMGMvVjRGV3JjS3NtT1ZwY2dUVlpBQ2d2Sks5RnpTV2cxNUo4eS9XUwo3bUN6Q1VlS2t6bjNJYytiTm9kbldlSDdxcWYyTUdIUnladmxxN3hyVUlPSHJpdG81WFB5Ui9VR2IyUnRrVnBYCkdZekRhRnhka1pNL3dUK29wVjlhNWh5THErbWRqQTFIVkluZUtyUlpvdWN3SFFjd2g3bmZMVGVOZTNBblNjSkQKaVRaY3dkbzlXMlhpR2dlbUttQjBac1FTTkZybWNMbVUyYWZBeFRQWFAwYUxUR25rN0RtR2RlWlErS2Fyd2dkVwpXdGFKS0V1ZFJYZ0xoSnZaNlBnNGVZZDA5M3UyUDNUSXo4dnhnZGVVS0IyWngwVURDQjJZditiMm1xNlJCMjIwCmg1RmR3c1cvMlg1RFNRPT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo="),\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "secret-ric-ca-cert",\r
+                       Namespace: "ricplt",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       Kind:       "Secret",\r
+                       APIVersion: "v1",\r
+               },\r
+       }\r
+\r
+       secret9 := &corev1.Secret{\r
+               Data: map[string][]uint8{\r
+                       "tls.crt": getDataForSecret("LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURpakNDQW5LZ0F3SUJBZ0lRTEdWbEJ3ZmVTemVhbU1QNEdVVTZGekFOQmdrcWhraUc5dzBCQVFzRkFEQTkKTVRzd09RWURWUVFERXpJdlF6MVZVeTlQUFU4dFVrRk9JRUZzYkdsaGJtTmxMMDlWUFU4dFVrRk9JRk52Wm5SMwpZWEpsSUVOdmJXMTFibWwwZVRBZUZ3MHlNekV3TWpjd09UTXlNREJhRncwME9ERXdNakF3T1RNeU1EQmFNRTB4ClN6QkpCZ05WQkFNVFFpOURQVlZUTDA4OVR5MVNRVTRnUVd4c2FXRnVZMlV2VDFVOVR5MVNRVTRnVTI5bWRIZGgKY21VZ1EyOXRiWFZ1YVhSNUwwTk9QVkpKUXkxUWJHRjBabTl5YlRDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFBRApnZ0VQQURDQ0FRb0NnZ0VCQU1Sa1Rlc0lNWWxTQlpkWXR1cGZaSWVQaWI5MXNta3Rsb1VvcTNzM29IZE45T2RlCjBkY1p4NkxEeEIzSU1qRzVWUlR6MjlSZnp5bVZCQVZKS081Mm5PQ3VaVThFS2IzUGpGUW5LMnVJZ1pUL0x5WnYKSko5ZTZSeEVsYW41elNGZk13bytsMjhLRHpYRGJ4R0pZSDQ1dFRINXRjcnNJcGw4c0dGNmRQbGxJdmt1cUdqKwpZS3lnaGJzeU9hdEdBWi9QN3VLaUIyZER5UEVNdmgxNzBBSjk1azg5eWxsSXJEelc0NDV3U0VyQUhuQjMwMWpsCk9PUDhNUnlDYzY2c3VuVDdhMHBnOXp4R1RsT2JHVFdUSG1Ec2VDSURxdXZjdVk3ckE0RkRqVUtGOFlseXNVaTAKa3NGNGd5eVVaaGtmQUdWanNqcHlQMVdseXRnMk1KVHF5YjBGbVRNQ0F3RUFBYU4yTUhRd0RnWURWUjBQQVFILwpCQVFEQWdXZ01CMEdBMVVkSlFRV01CUUdDQ3NHQVFVRkJ3TUJCZ2dyQmdFRkJRY0RBakFNQmdOVkhSTUJBZjhFCkFqQUFNQjhHQTFVZEl3UVlNQmFBRkUzcFExSDZ3cGFqOUNxeWFieWE4UnVYdXNzVU1CUUdBMVVkRVFRTk1BdUMKQ1hKcFl5MWxiblJ5ZVRBTkJna3Foa2lHOXcwQkFRc0ZBQU9DQVFFQVR3S2NGejdwWVRVUHVtQzdUY2FQcVNnRAozNHpsUG9vNWh2QlRhRTQvRE5DeEo4ZCs5SytBeVZXckF1VTNnUFJ1V3o1VVQydERQZzFoMXpMSkNHZlo2UllQClFyM2krQU1ETWtvd0M5cGZtaEIyUG9oTjJrWjBmS2t1VWxaMlhUYXpOS2VZTFFSZUhWTUhJYkJuVnZTS1ZHUjYKYjkvQ0JPblMvcm5lV01SOVNiRW85TUNoZGd5Vjd4Y1VRb25NdVh6SytJZ21sOXlsb1QzOWJ0ZFVVY0V0RTZ6UQpCcnVWOFhPQmhPbGFwdUJJNlpPVTY3RHM0LzYvb0Z6eUxXU0ZiNWNEMEF3Rk40STFBcS80OGNNMjQ0RjZIbWpwCjZiZTluYmpYVVlaQmk0NkIxVWtRbk9aYkJNazd0c2FPLzBRR1VGbXZQZXRRYVlyM2ZtVDNlMFJWOC9KbWhBPT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo="),\r
+                       "tls.key": getDataForSecret("LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBeEdSTjZ3Z3hpVklGbDFpMjZsOWtoNCtKdjNXeWFTMldoU2lyZXplZ2QwMzA1MTdSCjF4bkhvc1BFSGNneU1ibFZGUFBiMUYvUEtaVUVCVWtvN25hYzRLNWxUd1FwdmMrTVZDY3JhNGlCbFA4dkptOGsKbjE3cEhFU1ZxZm5OSVY4ekNqNlhid29QTmNOdkVZbGdmam0xTWZtMXl1d2ltWHl3WVhwMCtXVWkrUzZvYVA1ZwpyS0NGdXpJNXEwWUJuOC91NHFJSFowUEk4UXkrSFh2UUFuM21UejNLV1Vpc1BOYmpqbkJJU3NBZWNIZlRXT1U0CjQvd3hISUp6cnF5NmRQdHJTbUQzUEVaT1U1c1pOWk1lWU94NElnT3E2OXk1anVzRGdVT05Rb1h4aVhLeFNMU1MKd1hpRExKUm1HUjhBWldPeU9uSS9WYVhLMkRZd2xPckp2UVdaTXdJREFRQUJBb0lCQVFDL25qNklQQTVaTmJaTwozVGhicFllbzNOeEIrc3lBNHdJaUduUjJYT2dzZjl1Y2hGK3B5SFdJMGduZ0pSMFVkd2dVMFhxRDFKZUVzdWloClg2aVlReEwrQmlyQzFnVUVOaVZ0Vm1wL0dVbVYzd1phTWNkQjJKRUtDOEViZjZndUQzejFXZXpYWXJGRWU5TTcKQVJjdEVaRkJtYXRPdXVkbmFzbU4wcldmUUpiSEdKR1FCV0xobU82OHpyZHhSTlhLNVdYemlWOUxnR05SSHNjagpVMW9xT1MyanJEbjhpRVRZaWcrcU1MK2NKUVVDb2krcThLVTVlMktzTitmaEgxUDQwM0RTaVp0M1VmVVlpL1BjCjBLZHpNaXByQThzS004TTI2ZDVDRGd3aDFJVHJIbi81MkRKVUZkVmpvZU9PMFFXZ1hURzY2UGE4S0FlR3dUKzUKamtaeS8zZ0JBb0dCQU9OdTB6Sm41NmEwSXR1Y1RmWjVLeGtOOC9xdTB6Q3BYcGp3T1RTZVFHZWNpcHRTeGJSRgpuaDVBYlg3dTVUb1VKbmVNYUhDQlZKNzlMKzRlZjBzSU16NnhxSmZ1YmFXeHVSRkFrZjNqMGIwY1l4bE14SjRiCmZPVDdnWUcyTGFUL1dYQjB0QncyMHQzSXFxRjY4SjdZTVYwbmVYTEZMVTFKT1ZLOU5SVUFCU0t6QW9HQkFOMFAKVittS1ZmZWlWNUxYT1JpaXhaQ0V0V2VnNW9iWnlLR2hHSGZacEQzS00zY2VFei9WVnlvY3AyOTM5UVcwQTRWeQpXL3hESXZWSVh6aHZneGIrdERiU1ZESlZRVThDQnVDd0I2enl2S1JMR21sR01HMUZrK1EvY0hIcENBcXc5NHdmCjZGUkpWMTBZMzllMEtvVVkzQXBhTVFCdDRxWUwvWEw4WTg5eHp1K0JBb0dBREN4K2VaQStRaG9hVTQ4R1RVOG4KRTJ3L3h3ZGNucG95U2hWeHVuTk9GejIxM2FLTW1wMnZYUWN0MVVHTVc1T0FpNTJrYVlGQ3VrL3JKTi9WQ0hzago0eE0zWndxSUsvcGJZYVVISzRQcVVpa1cxTi9iRm10NlAvZUdjeDhCU25ld25laGhTN0ZUa0RPUmpwczZEZ2FjCmZkUURHRFdkdXlsVVBDMk1qZGMyYnlrQ2dZRUFrSitGS0drMHJQb3N5UWk5ZGZ5bnZGRFdUYUhhcjhhemwrckoKRXovMFQraUZteHkyQTBFVDhaMGxmYXZCUmFYcjE5WmxqN2hzbW9ScXA0VnRBaEpJM01UbUNMZjJMalpwUVg1bwp4eUZYZ1RVUlptWmhNRndnMFdjZnJhYURlRnNtMlNuVzJhM1IxanA3MTZjcldrQlZWUUNFcG44OWxOeXJTQnNQClFaeDNnZ0VDZ1lBQ0lEL0tBcEx2aHA5dDR1a205YVg5bWR0OThVbmRjT2tNT1pwSW43SG82cDJvb0lTM01KTVUKeHJ6VVpXVm1wWGExQVprZHp4WU5BTUtGYTk0aTNXcXJwYSsrQXhoKzlTSVY2N0w5dkthNjBCVi9lbStkY2tWLwpaYWlVelE1ak9UalJtdXNxMFdjMWVIN0tNaUpmUGp0SGdDaFZ5VmRsak51WmxwTERNYWZQV1E9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo="),\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Namespace: "ricplt",\r
+                       Name:      "secret-plt-ingress-cert",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Secret",\r
+               },\r
+       }\r
+\r
+       secret10 := &corev1.Secret{\r
+               Data: map[string][]uint8{\r
+                       "tls.crt": getDataForSecret("LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURnekNDQW11Z0F3SUJBZ0lSQU5qajlCd1NJUTZQWjU2Z2hlaC83K2N3RFFZSktvWklodmNOQVFFTEJRQXcKUFRFN01Ea0dBMVVFQXhNeUwwTTlWVk12VHoxUExWSkJUaUJCYkd4cFlXNWpaUzlQVlQxUExWSkJUaUJUYjJaMApkMkZ5WlNCRGIyMXRkVzVwZEhrd0hoY05Nak14TURJM01Ea3pNakF3V2hjTk5EZ3hNREl3TURrek1qQXdXakJGCk1VTXdRUVlEVlFRREV6b3ZRejFWVXk5UFBVOHRVa0ZPSUVGc2JHbGhibU5sTDA5VlBVOHRVa0ZPSUZOdlpuUjMKWVhKbElFTnZiVzExYm1sMGVTOURUajFvWld4dE1JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQgpDZ0tDQVFFQXhac0szaTN0R3Z5WWZrVUkyOFpDc0xWYmdCSi91T3hkeVh4a3VvNWtHUVFOTnIrUWpEMmVYNWdPCnFrMUVaU2J0SnUxTDJnQjh0RXlpZ0Y3aWNRbmRzNFZGRUQyeTNMQ0VydmhVdTlmTkQvN0NRMGc4OG9UMzV5bW0KR3JqeGc4ZkNYWUxYWE83a0VPa0tzbHQ2eTB3c1R3NUhOVjBiaVAzQWZjcXlGM25ZS1hiODdUMXdRZ3hQc3E2SgpzQlhIRmJtUXJCblZMV0JWTWNjRUpDYi81L0MyTDFUV1NyUWhoV0g4WW1HZ1lTbnlSaEsyNVhhcDRwcm1iRDBqCmppMCtxS1o4VjRMSDVRc25ZcFBuR2RvSk53UEFpNksyOVZnZEtaZ2twOHYwT0JLWTRCcVRUbDIwUEswSGU0N1YKTnhFN29abmExRExZTGo4bDJhTkhSd2dpK1hVaXRRSURBUUFCbzNZd2REQU9CZ05WSFE4QkFmOEVCQU1DQmFBdwpIUVlEVlIwbEJCWXdGQVlJS3dZQkJRVUhBd0VHQ0NzR0FRVUZCd01DTUF3R0ExVWRFd0VCL3dRQ01BQXdId1lEClZSMGpCQmd3Rm9BVVRlbERVZnJDbHFQMEtySnB2SnJ4RzVlNnl4UXdGQVlEVlIwUkJBMHdDNElKWVhWNExXVnUKZEhKNU1BMEdDU3FHU0liM0RRRUJDd1VBQTRJQkFRQWNHeVVqQk14cWdXWHNpVjBjV3hJZGh2UHFNbjdORW5XKwo2NVlweUxTMS9HaVRCT1VrR1dCOFMwSVJOcXpUaFRUREtpVGdCaWVicWlzTjBkTk5QYVZOcjRjNjhRZk1oYTNlCm94aEhYeU92eDAwN0g1dzNMZm05d1ZMVzlHNElMV1c1cFF1eERpMm1kUzJkYVNHUDVhV3FWY0dNMDNraU95ekgKUzJlY2JOaFEzSDRUa1VwT1EzakxQVzNZRS80MGVhRm5KaUpxazRBWmc2SktGVy9lL01mejBJOFVVSkZKQ1g4bwpxL2dud0ZzZFNOOGNvdkM1VERBMkt0Mjl3UmtUbW1zU1BKaUhwNHN1eTl3ME9sWFI0d3MwMEg0N3E3QlZuVFhyCjBIcWRRTk9relYvb3lrT1lrVFViclBmQWV4clllUmdvWHdpWlI1MndZSFUrODY2VkZXOTIKLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo="),\r
+                       "tls.key": getDataForSecret("LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcFFJQkFBS0NBUUVBeFpzSzNpM3RHdnlZZmtVSTI4WkNzTFZiZ0JKL3VPeGR5WHhrdW81a0dRUU5OcitRCmpEMmVYNWdPcWsxRVpTYnRKdTFMMmdCOHRFeWlnRjdpY1FuZHM0VkZFRDJ5M0xDRXJ2aFV1OWZORC83Q1EwZzgKOG9UMzV5bW1Hcmp4ZzhmQ1hZTFhYTzdrRU9rS3NsdDZ5MHdzVHc1SE5WMGJpUDNBZmNxeUYzbllLWGI4N1QxdwpRZ3hQc3E2SnNCWEhGYm1RckJuVkxXQlZNY2NFSkNiLzUvQzJMMVRXU3JRaGhXSDhZbUdnWVNueVJoSzI1WGFwCjRwcm1iRDBqamkwK3FLWjhWNExINVFzbllwUG5HZG9KTndQQWk2SzI5VmdkS1pna3A4djBPQktZNEJxVFRsMjAKUEswSGU0N1ZOeEU3b1puYTFETFlMajhsMmFOSFJ3Z2krWFVpdFFJREFRQUJBb0lCQVFERW9uN1REb0oySzB1WAp3eHlJamlhSTd6OHBGNzl2Qmc1aDFGM3I0b3VxOVFRdEtiMHVRSmJiYTFXVWxDVHVQeWtZWm1QbmdEcVhzL2EwCnBUYlI0MDV4T0xtNzZwbVUwRGFJWW1iM01VeEdrVzFBUko4WmVjV3lpeGhXV1JsRDJFRUtpb3ZDVjVvdFZha20KU0svTm8zUW9DdjVERk82MGlFWEhKeS9HK3FGbXg5ZStlZUJQQm5ZbmR6UUVIZ1RhWldNT0ZvQ1Nwbkx1QmEyWAplT3cvaVJ4NTF0U0RtNzlzVzlXdDBDdlZORGpTRXJIMFQ1NTFmQmxBaE1XekVFTTI3RFc2anVMSCt3MVQ4bkdQCnZRZVcwdkhGOWsveWdxT3ZkU0trZ2k3TGpXMkFwRThESUVSQ0dCT1RkZmQzTSs1bGJ6azZOODdlcXpxRTB5aHoKaVRTT2EwWVZBb0dCQU95WjBpdUp0eXcwSjNGMytDRzNnVzBDMVZHQTBURDNCZE15dWNRN2dLOXVzclByVURtaApQTU4zQitYckdYOUpwVDVTbFZCSkRUUmFDMURGTno1eXpkOWlmRzg1NXg2RXNYREpvU2xYejRvT0hYYlJvQ3pmCk12YXNrbmNOTGdUVG5NcGU4YjhkeTlzbzNHY0padFRvd2t3VTZnd2tHUzFLa0lua2hTdlZxd3ZyQW9HQkFOWE8KdVVLNjc2SUpSYlhBVTJmT25OUjNmWXFFL1lFSXBzSXZaV3dveHBORDMyUFVCdVU3dE1IY2FpWm9Dcy9rb1IxTgpiYkROeTZVRE5BQk1NWmVuanNXM1hXcUJwQ280dFpPRnFrdkRveHp6bHpiQklMcDkxdDF1bEU2OThiNkFwNkhBCjIwcFdYMnYwODFhaisxeWoxWmlnT3RKdHJxM0tSRWs4TFQyT2RnUGZBb0dCQU1BVGtEK3dLWGhGVHRBYktPR1cKYkFmbmlPNEZ1YzRhZkN3Y3ZockVnNC9vT2tNK0FYOEhtcURFZlREMlQxaTZuTitmZzRBT0RoNDJDNEdpMlZwbApNU1RzZTBDQXJWUmxQUGZuZUdKcjJ4eWtvTjdaQjBQbVh5VktyQXppTWozUTNUU2RKM3lUMys4bm1PWTlCN0pJCjA1T1lWdmxNUlBRejJHdFpqWk1zZnhQSkFvR0FOSFdVWHhzZTBOTVZsNUtvNUQ5OW0yUDJHWmFuM0pFUzJYSm4Kb0RJaEJ1RVFYcDRYVXdkalFtMmlYZW9KUFJrTHJ2VGdoUkQ1ZG5OaXZ1L3kreExScFJGb2lrbGt6amM3MWdabAowbEVlSkd4Z0hiOGxHSnpucTAwR2RvdUVWUW1jRjhRS0NpTkhKbVhqanM2TlRoMmt1dDRWa0t2NHdBdHcxY2MrCkVteHg2R0VDZ1lFQWw5MGFCaUdyWURyeUJ0MTNmc3pmTlpTaS8ySjdzVFpsdjJFNGttbmlCUHpMYVlLZTU3ay8KK0dGM3NDYWtZcWRRb3RGSFMyOWNjWThaandrclZtQXRFWmNqR1REY0RvaTdFdWRKWEMwOVZjN2EweEFHbEdldwpadlhRc1N0T3hST211dUQvVGNuUWl6SXd3akZlNHJ5RE9oaDFvcDVrR2M3SnJha0FvVXdqNjB3PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo="),\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "secret-aux-ingress-cert",\r
+                       Namespace: "ricplt",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Secret",\r
+               },\r
+       }\r
+\r
+       secret11 := &corev1.Secret{\r
+               Data: map[string][]uint8{\r
+                       "ca.crt": getDataForSecret("LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURaakNDQWs2Z0F3SUJBZ0lSQU0vRGZDOXJ0R0tBdHh3ZlVBL0tOR3N3RFFZSktvWklodmNOQVFFTEJRQXcKUFRFN01Ea0dBMVVFQXhNeUwwTTlWVk12VHoxUExWSkJUaUJCYkd4cFlXNWpaUzlQVlQxUExWSkJUaUJUYjJaMApkMkZ5WlNCRGIyMXRkVzVwZEhrd0hoY05Nak14TURJM01Ea3pNakF3V2hjTk5EZ3hNREl3TURrek1qQXdXakE5Ck1Uc3dPUVlEVlFRREV6SXZRejFWVXk5UFBVOHRVa0ZPSUVGc2JHbGhibU5sTDA5VlBVOHRVa0ZPSUZOdlpuUjMKWVhKbElFTnZiVzExYm1sMGVUQ0NBU0l3RFFZSktvWklodmNOQVFFQkJRQURnZ0VQQURDQ0FRb0NnZ0VCQUoydAoxcnF0TkFxNndpV3BxRktDa1lUczVzejJueCtoSGhoQk9iQXZMK1doekZPQXQ3RVFQRnBSKzEzOTNPMFdJM0tmCm1ncmJPNHM1eDhwd0pIekFHNTFnTlh2TFArSjJhREVFcG1JcUIrajQ0ZVpuZytmTzd4c01ua0Z3UGVkdHdMUmcKR1QxdzVqTDZ4YWR1SjhKamx6dXR0ZDcxNTYxMEk5MWhPb1NCVXRJWkRiQmk1NUQ0MlBHUzV0YmNFeWhrYm13QQplR3M5NWVTT1doS0RFTTZvcXVidU5IVWNRczB6ODB2eGc1UlN5OU9lRG1CQi9mVTFtT3dmOTY2NGpKNHhGZUMzCmFLMWh2a1NHbGNJNlhrb2g0TkV2WlpZb21MZGh1QzVlVmtzS0Flay9UUXhXeGlmWHhpWlBPSVh0U0ZacW5rcmEKbmdLSmdyUWdHNTczbVBNVHBHRUNBd0VBQWFOaE1GOHdEZ1lEVlIwUEFRSC9CQVFEQWdLa01CMEdBMVVkSlFRVwpNQlFHQ0NzR0FRVUZCd01CQmdnckJnRUZCUWNEQWpBUEJnTlZIUk1CQWY4RUJUQURBUUgvTUIwR0ExVWREZ1FXCkJCUk42VU5SK3NLV28vUXFzbW04bXZFYmw3ckxGREFOQmdrcWhraUc5dzBCQVFzRkFBT0NBUUVBYXZ0aVBVYVUKbkVTVXU1ZFFsa1RTVnNpMFlWM0Z0UldCMGMvVjRGV3JjS3NtT1ZwY2dUVlpBQ2d2Sks5RnpTV2cxNUo4eS9XUwo3bUN6Q1VlS2t6bjNJYytiTm9kbldlSDdxcWYyTUdIUnladmxxN3hyVUlPSHJpdG81WFB5Ui9VR2IyUnRrVnBYCkdZekRhRnhka1pNL3dUK29wVjlhNWh5THErbWRqQTFIVkluZUtyUlpvdWN3SFFjd2g3bmZMVGVOZTNBblNjSkQKaVRaY3dkbzlXMlhpR2dlbUttQjBac1FTTkZybWNMbVUyYWZBeFRQWFAwYUxUR25rN0RtR2RlWlErS2Fyd2dkVwpXdGFKS0V1ZFJYZ0xoSnZaNlBnNGVZZDA5M3UyUDNUSXo4dnhnZGVVS0IyWngwVURDQjJZditiMm1xNlJCMjIwCmg1RmR3c1cvMlg1RFNRPT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo="),\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "secret-ric-ca-cert",\r
+                       Namespace: "ricxapp",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Secret",\r
+               },\r
+       }\r
+\r
+       secret12 := &corev1.Secret{\r
+               Data: map[string][]uint8{\r
+                       "tls.crt": getDataForSecret("LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURpakNDQW5LZ0F3SUJBZ0lRTEdWbEJ3ZmVTemVhbU1QNEdVVTZGekFOQmdrcWhraUc5dzBCQVFzRkFEQTkKTVRzd09RWURWUVFERXpJdlF6MVZVeTlQUFU4dFVrRk9JRUZzYkdsaGJtTmxMMDlWUFU4dFVrRk9JRk52Wm5SMwpZWEpsSUVOdmJXMTFibWwwZVRBZUZ3MHlNekV3TWpjd09UTXlNREJhRncwME9ERXdNakF3T1RNeU1EQmFNRTB4ClN6QkpCZ05WQkFNVFFpOURQVlZUTDA4OVR5MVNRVTRnUVd4c2FXRnVZMlV2VDFVOVR5MVNRVTRnVTI5bWRIZGgKY21VZ1EyOXRiWFZ1YVhSNUwwTk9QVkpKUXkxUWJHRjBabTl5YlRDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFBRApnZ0VQQURDQ0FRb0NnZ0VCQU1Sa1Rlc0lNWWxTQlpkWXR1cGZaSWVQaWI5MXNta3Rsb1VvcTNzM29IZE45T2RlCjBkY1p4NkxEeEIzSU1qRzVWUlR6MjlSZnp5bVZCQVZKS081Mm5PQ3VaVThFS2IzUGpGUW5LMnVJZ1pUL0x5WnYKSko5ZTZSeEVsYW41elNGZk13bytsMjhLRHpYRGJ4R0pZSDQ1dFRINXRjcnNJcGw4c0dGNmRQbGxJdmt1cUdqKwpZS3lnaGJzeU9hdEdBWi9QN3VLaUIyZER5UEVNdmgxNzBBSjk1azg5eWxsSXJEelc0NDV3U0VyQUhuQjMwMWpsCk9PUDhNUnlDYzY2c3VuVDdhMHBnOXp4R1RsT2JHVFdUSG1Ec2VDSURxdXZjdVk3ckE0RkRqVUtGOFlseXNVaTAKa3NGNGd5eVVaaGtmQUdWanNqcHlQMVdseXRnMk1KVHF5YjBGbVRNQ0F3RUFBYU4yTUhRd0RnWURWUjBQQVFILwpCQVFEQWdXZ01CMEdBMVVkSlFRV01CUUdDQ3NHQVFVRkJ3TUJCZ2dyQmdFRkJRY0RBakFNQmdOVkhSTUJBZjhFCkFqQUFNQjhHQTFVZEl3UVlNQmFBRkUzcFExSDZ3cGFqOUNxeWFieWE4UnVYdXNzVU1CUUdBMVVkRVFRTk1BdUMKQ1hKcFl5MWxiblJ5ZVRBTkJna3Foa2lHOXcwQkFRc0ZBQU9DQVFFQVR3S2NGejdwWVRVUHVtQzdUY2FQcVNnRAozNHpsUG9vNWh2QlRhRTQvRE5DeEo4ZCs5SytBeVZXckF1VTNnUFJ1V3o1VVQydERQZzFoMXpMSkNHZlo2UllQClFyM2krQU1ETWtvd0M5cGZtaEIyUG9oTjJrWjBmS2t1VWxaMlhUYXpOS2VZTFFSZUhWTUhJYkJuVnZTS1ZHUjYKYjkvQ0JPblMvcm5lV01SOVNiRW85TUNoZGd5Vjd4Y1VRb25NdVh6SytJZ21sOXlsb1QzOWJ0ZFVVY0V0RTZ6UQpCcnVWOFhPQmhPbGFwdUJJNlpPVTY3RHM0LzYvb0Z6eUxXU0ZiNWNEMEF3Rk40STFBcS80OGNNMjQ0RjZIbWpwCjZiZTluYmpYVVlaQmk0NkIxVWtRbk9aYkJNazd0c2FPLzBRR1VGbXZQZXRRYVlyM2ZtVDNlMFJWOC9KbWhBPT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo="),\r
+                       "tls.key": getDataForSecret("LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBeEdSTjZ3Z3hpVklGbDFpMjZsOWtoNCtKdjNXeWFTMldoU2lyZXplZ2QwMzA1MTdSCjF4bkhvc1BFSGNneU1ibFZGUFBiMUYvUEtaVUVCVWtvN25hYzRLNWxUd1FwdmMrTVZDY3JhNGlCbFA4dkptOGsKbjE3cEhFU1ZxZm5OSVY4ekNqNlhid29QTmNOdkVZbGdmam0xTWZtMXl1d2ltWHl3WVhwMCtXVWkrUzZvYVA1ZwpyS0NGdXpJNXEwWUJuOC91NHFJSFowUEk4UXkrSFh2UUFuM21UejNLV1Vpc1BOYmpqbkJJU3NBZWNIZlRXT1U0CjQvd3hISUp6cnF5NmRQdHJTbUQzUEVaT1U1c1pOWk1lWU94NElnT3E2OXk1anVzRGdVT05Rb1h4aVhLeFNMU1MKd1hpRExKUm1HUjhBWldPeU9uSS9WYVhLMkRZd2xPckp2UVdaTXdJREFRQUJBb0lCQVFDL25qNklQQTVaTmJaTwozVGhicFllbzNOeEIrc3lBNHdJaUduUjJYT2dzZjl1Y2hGK3B5SFdJMGduZ0pSMFVkd2dVMFhxRDFKZUVzdWloClg2aVlReEwrQmlyQzFnVUVOaVZ0Vm1wL0dVbVYzd1phTWNkQjJKRUtDOEViZjZndUQzejFXZXpYWXJGRWU5TTcKQVJjdEVaRkJtYXRPdXVkbmFzbU4wcldmUUpiSEdKR1FCV0xobU82OHpyZHhSTlhLNVdYemlWOUxnR05SSHNjagpVMW9xT1MyanJEbjhpRVRZaWcrcU1MK2NKUVVDb2krcThLVTVlMktzTitmaEgxUDQwM0RTaVp0M1VmVVlpL1BjCjBLZHpNaXByQThzS004TTI2ZDVDRGd3aDFJVHJIbi81MkRKVUZkVmpvZU9PMFFXZ1hURzY2UGE4S0FlR3dUKzUKamtaeS8zZ0JBb0dCQU9OdTB6Sm41NmEwSXR1Y1RmWjVLeGtOOC9xdTB6Q3BYcGp3T1RTZVFHZWNpcHRTeGJSRgpuaDVBYlg3dTVUb1VKbmVNYUhDQlZKNzlMKzRlZjBzSU16NnhxSmZ1YmFXeHVSRkFrZjNqMGIwY1l4bE14SjRiCmZPVDdnWUcyTGFUL1dYQjB0QncyMHQzSXFxRjY4SjdZTVYwbmVYTEZMVTFKT1ZLOU5SVUFCU0t6QW9HQkFOMFAKVittS1ZmZWlWNUxYT1JpaXhaQ0V0V2VnNW9iWnlLR2hHSGZacEQzS00zY2VFei9WVnlvY3AyOTM5UVcwQTRWeQpXL3hESXZWSVh6aHZneGIrdERiU1ZESlZRVThDQnVDd0I2enl2S1JMR21sR01HMUZrK1EvY0hIcENBcXc5NHdmCjZGUkpWMTBZMzllMEtvVVkzQXBhTVFCdDRxWUwvWEw4WTg5eHp1K0JBb0dBREN4K2VaQStRaG9hVTQ4R1RVOG4KRTJ3L3h3ZGNucG95U2hWeHVuTk9GejIxM2FLTW1wMnZYUWN0MVVHTVc1T0FpNTJrYVlGQ3VrL3JKTi9WQ0hzago0eE0zWndxSUsvcGJZYVVISzRQcVVpa1cxTi9iRm10NlAvZUdjeDhCU25ld25laGhTN0ZUa0RPUmpwczZEZ2FjCmZkUURHRFdkdXlsVVBDMk1qZGMyYnlrQ2dZRUFrSitGS0drMHJQb3N5UWk5ZGZ5bnZGRFdUYUhhcjhhemwrckoKRXovMFQraUZteHkyQTBFVDhaMGxmYXZCUmFYcjE5WmxqN2hzbW9ScXA0VnRBaEpJM01UbUNMZjJMalpwUVg1bwp4eUZYZ1RVUlptWmhNRndnMFdjZnJhYURlRnNtMlNuVzJhM1IxanA3MTZjcldrQlZWUUNFcG44OWxOeXJTQnNQClFaeDNnZ0VDZ1lBQ0lEL0tBcEx2aHA5dDR1a205YVg5bWR0OThVbmRjT2tNT1pwSW43SG82cDJvb0lTM01KTVUKeHJ6VVpXVm1wWGExQVprZHp4WU5BTUtGYTk0aTNXcXJwYSsrQXhoKzlTSVY2N0w5dkthNjBCVi9lbStkY2tWLwpaYWlVelE1ak9UalJtdXNxMFdjMWVIN0tNaUpmUGp0SGdDaFZ5VmRsak51WmxwTERNYWZQV1E9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo="),\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "secret-plt-ingress-cert",\r
+                       Namespace: "ricxapp",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Secret",\r
+               },\r
+       }\r
+\r
+       secret13 := &corev1.Secret{\r
+               Data: map[string][]uint8{\r
+                       "tls.crt": getDataForSecret("LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURnekNDQW11Z0F3SUJBZ0lSQU5qajlCd1NJUTZQWjU2Z2hlaC83K2N3RFFZSktvWklodmNOQVFFTEJRQXcKUFRFN01Ea0dBMVVFQXhNeUwwTTlWVk12VHoxUExWSkJUaUJCYkd4cFlXNWpaUzlQVlQxUExWSkJUaUJUYjJaMApkMkZ5WlNCRGIyMXRkVzVwZEhrd0hoY05Nak14TURJM01Ea3pNakF3V2hjTk5EZ3hNREl3TURrek1qQXdXakJGCk1VTXdRUVlEVlFRREV6b3ZRejFWVXk5UFBVOHRVa0ZPSUVGc2JHbGhibU5sTDA5VlBVOHRVa0ZPSUZOdlpuUjMKWVhKbElFTnZiVzExYm1sMGVTOURUajFvWld4dE1JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQgpDZ0tDQVFFQXhac0szaTN0R3Z5WWZrVUkyOFpDc0xWYmdCSi91T3hkeVh4a3VvNWtHUVFOTnIrUWpEMmVYNWdPCnFrMUVaU2J0SnUxTDJnQjh0RXlpZ0Y3aWNRbmRzNFZGRUQyeTNMQ0VydmhVdTlmTkQvN0NRMGc4OG9UMzV5bW0KR3JqeGc4ZkNYWUxYWE83a0VPa0tzbHQ2eTB3c1R3NUhOVjBiaVAzQWZjcXlGM25ZS1hiODdUMXdRZ3hQc3E2SgpzQlhIRmJtUXJCblZMV0JWTWNjRUpDYi81L0MyTDFUV1NyUWhoV0g4WW1HZ1lTbnlSaEsyNVhhcDRwcm1iRDBqCmppMCtxS1o4VjRMSDVRc25ZcFBuR2RvSk53UEFpNksyOVZnZEtaZ2twOHYwT0JLWTRCcVRUbDIwUEswSGU0N1YKTnhFN29abmExRExZTGo4bDJhTkhSd2dpK1hVaXRRSURBUUFCbzNZd2REQU9CZ05WSFE4QkFmOEVCQU1DQmFBdwpIUVlEVlIwbEJCWXdGQVlJS3dZQkJRVUhBd0VHQ0NzR0FRVUZCd01DTUF3R0ExVWRFd0VCL3dRQ01BQXdId1lEClZSMGpCQmd3Rm9BVVRlbERVZnJDbHFQMEtySnB2SnJ4RzVlNnl4UXdGQVlEVlIwUkJBMHdDNElKWVhWNExXVnUKZEhKNU1BMEdDU3FHU0liM0RRRUJDd1VBQTRJQkFRQWNHeVVqQk14cWdXWHNpVjBjV3hJZGh2UHFNbjdORW5XKwo2NVlweUxTMS9HaVRCT1VrR1dCOFMwSVJOcXpUaFRUREtpVGdCaWVicWlzTjBkTk5QYVZOcjRjNjhRZk1oYTNlCm94aEhYeU92eDAwN0g1dzNMZm05d1ZMVzlHNElMV1c1cFF1eERpMm1kUzJkYVNHUDVhV3FWY0dNMDNraU95ekgKUzJlY2JOaFEzSDRUa1VwT1EzakxQVzNZRS80MGVhRm5KaUpxazRBWmc2SktGVy9lL01mejBJOFVVSkZKQ1g4bwpxL2dud0ZzZFNOOGNvdkM1VERBMkt0Mjl3UmtUbW1zU1BKaUhwNHN1eTl3ME9sWFI0d3MwMEg0N3E3QlZuVFhyCjBIcWRRTk9relYvb3lrT1lrVFViclBmQWV4clllUmdvWHdpWlI1MndZSFUrODY2VkZXOTIKLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo="),\r
+                       "tls.key": getDataForSecret("LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcFFJQkFBS0NBUUVBeFpzSzNpM3RHdnlZZmtVSTI4WkNzTFZiZ0JKL3VPeGR5WHhrdW81a0dRUU5OcitRCmpEMmVYNWdPcWsxRVpTYnRKdTFMMmdCOHRFeWlnRjdpY1FuZHM0VkZFRDJ5M0xDRXJ2aFV1OWZORC83Q1EwZzgKOG9UMzV5bW1Hcmp4ZzhmQ1hZTFhYTzdrRU9rS3NsdDZ5MHdzVHc1SE5WMGJpUDNBZmNxeUYzbllLWGI4N1QxdwpRZ3hQc3E2SnNCWEhGYm1RckJuVkxXQlZNY2NFSkNiLzUvQzJMMVRXU3JRaGhXSDhZbUdnWVNueVJoSzI1WGFwCjRwcm1iRDBqamkwK3FLWjhWNExINVFzbllwUG5HZG9KTndQQWk2SzI5VmdkS1pna3A4djBPQktZNEJxVFRsMjAKUEswSGU0N1ZOeEU3b1puYTFETFlMajhsMmFOSFJ3Z2krWFVpdFFJREFRQUJBb0lCQVFERW9uN1REb0oySzB1WAp3eHlJamlhSTd6OHBGNzl2Qmc1aDFGM3I0b3VxOVFRdEtiMHVRSmJiYTFXVWxDVHVQeWtZWm1QbmdEcVhzL2EwCnBUYlI0MDV4T0xtNzZwbVUwRGFJWW1iM01VeEdrVzFBUko4WmVjV3lpeGhXV1JsRDJFRUtpb3ZDVjVvdFZha20KU0svTm8zUW9DdjVERk82MGlFWEhKeS9HK3FGbXg5ZStlZUJQQm5ZbmR6UUVIZ1RhWldNT0ZvQ1Nwbkx1QmEyWAplT3cvaVJ4NTF0U0RtNzlzVzlXdDBDdlZORGpTRXJIMFQ1NTFmQmxBaE1XekVFTTI3RFc2anVMSCt3MVQ4bkdQCnZRZVcwdkhGOWsveWdxT3ZkU0trZ2k3TGpXMkFwRThESUVSQ0dCT1RkZmQzTSs1bGJ6azZOODdlcXpxRTB5aHoKaVRTT2EwWVZBb0dCQU95WjBpdUp0eXcwSjNGMytDRzNnVzBDMVZHQTBURDNCZE15dWNRN2dLOXVzclByVURtaApQTU4zQitYckdYOUpwVDVTbFZCSkRUUmFDMURGTno1eXpkOWlmRzg1NXg2RXNYREpvU2xYejRvT0hYYlJvQ3pmCk12YXNrbmNOTGdUVG5NcGU4YjhkeTlzbzNHY0padFRvd2t3VTZnd2tHUzFLa0lua2hTdlZxd3ZyQW9HQkFOWE8KdVVLNjc2SUpSYlhBVTJmT25OUjNmWXFFL1lFSXBzSXZaV3dveHBORDMyUFVCdVU3dE1IY2FpWm9Dcy9rb1IxTgpiYkROeTZVRE5BQk1NWmVuanNXM1hXcUJwQ280dFpPRnFrdkRveHp6bHpiQklMcDkxdDF1bEU2OThiNkFwNkhBCjIwcFdYMnYwODFhaisxeWoxWmlnT3RKdHJxM0tSRWs4TFQyT2RnUGZBb0dCQU1BVGtEK3dLWGhGVHRBYktPR1cKYkFmbmlPNEZ1YzRhZkN3Y3ZockVnNC9vT2tNK0FYOEhtcURFZlREMlQxaTZuTitmZzRBT0RoNDJDNEdpMlZwbApNU1RzZTBDQXJWUmxQUGZuZUdKcjJ4eWtvTjdaQjBQbVh5VktyQXppTWozUTNUU2RKM3lUMys4bm1PWTlCN0pJCjA1T1lWdmxNUlBRejJHdFpqWk1zZnhQSkFvR0FOSFdVWHhzZTBOTVZsNUtvNUQ5OW0yUDJHWmFuM0pFUzJYSm4Kb0RJaEJ1RVFYcDRYVXdkalFtMmlYZW9KUFJrTHJ2VGdoUkQ1ZG5OaXZ1L3kreExScFJGb2lrbGt6amM3MWdabAowbEVlSkd4Z0hiOGxHSnpucTAwR2RvdUVWUW1jRjhRS0NpTkhKbVhqanM2TlRoMmt1dDRWa0t2NHdBdHcxY2MrCkVteHg2R0VDZ1lFQWw5MGFCaUdyWURyeUJ0MTNmc3pmTlpTaS8ySjdzVFpsdjJFNGttbmlCUHpMYVlLZTU3ay8KK0dGM3NDYWtZcWRRb3RGSFMyOWNjWThaandrclZtQXRFWmNqR1REY0RvaTdFdWRKWEMwOVZjN2EweEFHbEdldwpadlhRc1N0T3hST211dUQvVGNuUWl6SXd3akZlNHJ5RE9oaDFvcDVrR2M3SnJha0FvVXdqNjB3PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo="),\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Namespace: "ricxapp",\r
+                       Name:      "secret-aux-ingress-cert",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       Kind:       "Secret",\r
+                       APIVersion: "v1",\r
+               },\r
+       }\r
+\r
+       secret14 := &corev1.Secret{\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Secret",\r
+               },\r
+               Data: map[string][]uint8{\r
+                       ".dockercfg": getDataForSecret("eyJuZXh1czMuby1yYW4tc2Mub3JnOjEwMDAyIjp7InVzZXJuYW1lIjoiZG9ja2VyIiwicGFzc3dvcmQiOiJkb2NrZXIiLCJlbWFpbCI6IkAiLCJhdXRoIjoiWkc5amEyVnlPbVJ2WTJ0bGNnPT0ifX0="),\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "secret-nexus3-o-ran-sc-org-10002",\r
+                       Namespace: "ricplt",\r
+               },\r
+               Type: corev1.SecretType("kubernetes.io/dockercfg"),\r
+       }\r
+\r
+       secret15 := &corev1.Secret{\r
+               Data: map[string][]uint8{\r
+                       ".dockercfg": getDataForSecret("eyJuZXh1czMuby1yYW4tc2Mub3JnOjEwMDA0Ijp7InVzZXJuYW1lIjoiZG9ja2VyIiwicGFzc3dvcmQiOiJkb2NrZXIiLCJlbWFpbCI6IkAiLCJhdXRoIjoiWkc5amEyVnlPbVJ2WTJ0bGNnPT0ifX0="),\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Namespace: "ricplt",\r
+                       Name:      "secret-nexus3-o-ran-sc-org-10004",\r
+               },\r
+               Type: corev1.SecretType("kubernetes.io/dockercfg"),\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Secret",\r
+               },\r
+       }\r
+\r
+       secret16 := &corev1.Secret{\r
+               Data: map[string][]uint8{\r
+                       ".dockercfg": getDataForSecret("eyJuZXh1czMuby1yYW4tc2Mub3JnOjEwMDAyIjp7InVzZXJuYW1lIjoiZG9ja2VyIiwicGFzc3dvcmQiOiJkb2NrZXIiLCJlbWFpbCI6IkAiLCJhdXRoIjoiWkc5amEyVnlPbVJ2WTJ0bGNnPT0ifX0="),\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Namespace: "ricxapp",\r
+                       Name:      "secret-nexus3-o-ran-sc-org-10002",\r
+               },\r
+               Type: corev1.SecretType("kubernetes.io/dockercfg"),\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Secret",\r
+               },\r
+       }\r
+\r
+       secret17 := &corev1.Secret{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "secret-nexus3-o-ran-sc-org-10004",\r
+                       Namespace: "ricxapp",\r
+               },\r
+               Type: corev1.SecretType("kubernetes.io/dockercfg"),\r
+               TypeMeta: metav1.TypeMeta{\r
+                       Kind:       "Secret",\r
+                       APIVersion: "v1",\r
+               },\r
+               Data: map[string][]uint8{\r
+                       ".dockercfg": getDataForSecret("eyJuZXh1czMuby1yYW4tc2Mub3JnOjEwMDA0Ijp7InVzZXJuYW1lIjoiZG9ja2VyIiwicGFzc3dvcmQiOiJkb2NrZXIiLCJlbWFpbCI6IkAiLCJhdXRoIjoiWkc5amEyVnlPbVJ2WTJ0bGNnPT0ifX0="),\r
+               },\r
+       }\r
+\r
+       secret18 := &corev1.Secret{\r
+               Data: map[string][]uint8{\r
+                       ".dockercfg": getDataForSecret("eyJuZXh1czMuby1yYW4tc2Mub3JnOjEwMDA0Ijp7InVzZXJuYW1lIjoiZG9ja2VyIiwicGFzc3dvcmQiOiJkb2NrZXIiLCJlbWFpbCI6IkAiLCJhdXRoIjoiWkc5amEyVnlPbVJ2WTJ0bGNnPT0ifX0="),\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "secret-nexus3-o-ran-sc-org-10004",\r
+                       Namespace: "ricinfra",\r
+               },\r
+               Type: corev1.SecretType("kubernetes.io/dockercfg"),\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Secret",\r
+               },\r
+       }\r
+\r
+       secret19 := &corev1.Secret{\r
+               Data: map[string][]uint8{\r
+                       ".dockercfg": getDataForSecret("eyJuZXh1czMuby1yYW4tc2Mub3JnOjEwMDAyIjp7InVzZXJuYW1lIjoiZG9ja2VyIiwicGFzc3dvcmQiOiJkb2NrZXIiLCJlbWFpbCI6IkAiLCJhdXRoIjoiWkc5amEyVnlPbVJ2WTJ0bGNnPT0ifX0="),\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "secret-nexus3-o-ran-sc-org-10002",\r
+                       Namespace: "ricinfra",\r
+               },\r
+               Type: corev1.SecretType("kubernetes.io/dockercfg"),\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Secret",\r
+               },\r
+       }\r
+\r
+       secret20 := &corev1.Secret{\r
+               Data: map[string][]uint8{\r
+                       "VESMGR_PRICOLLECTOR_USER":     getDataForSecret("c2FtcGxlMQo="),\r
+                       "VESMGR_PRICOLLECTOR_PASSWORD": getDataForSecret("JDJhJDEwJDBidWguMldlWXdOODY4WU13bk5ORXVORUFNTllWVTkuRlNNSkd5SUtWM2RHRVQvN29HT2k2Cg=="),\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name: "vespa-secrets",\r
+               },\r
+               Type: corev1.SecretType("Opaque"),\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Secret",\r
+               },\r
+       }\r
+\r
+       return []*corev1.Secret{secret1, secret2, secret3, secret4, secret5, secret6, secret7, secret8, secret9, secret10, secret11, secret12, secret13, secret14, secret15, secret16, secret17, secret18, secret19, secret20}\r
 }
\ No newline at end of file
index eab86dd..db75091 100644 (file)
@@ -18,6 +18,7 @@ func GetServiceAccount() []*corev1.ServiceAccount {
                        Kind:       "ServiceAccount",\r
                },\r
        }\r
+\r
        serviceAccount2 := &corev1.ServiceAccount{\r
                ObjectMeta: metav1.ObjectMeta{\r
                        Namespace: "ricplt",\r
@@ -28,6 +29,161 @@ func GetServiceAccount() []*corev1.ServiceAccount {
                        Kind:       "ServiceAccount",\r
                },\r
        }\r
-       \r
-       return []*corev1.ServiceAccount{serviceAccount1,serviceAccount2}\r
+\r
+       serviceAccount3 := &corev1.ServiceAccount{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Labels: map[string]string{\r
+                               "app.kubernetes.io/instance":   "release-name",\r
+                               "app.kubernetes.io/managed-by": "Helm",\r
+                               "app.kubernetes.io/name":       "kong",\r
+                               "app.kubernetes.io/version":    "1.4",\r
+                               "helm.sh/chart":                "kong-0.36.6",\r
+                       },\r
+                       Name: "release-name-kong",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "ServiceAccount",\r
+               },\r
+       }\r
+\r
+       serviceAccount4 := &corev1.ServiceAccount{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Annotations: map[string]string{\r
+                               "helm.sh/hook":               "pre-upgrade",\r
+                               "helm.sh/hook-delete-policy": "before-hook-creation,hook-succeeded",\r
+                       },\r
+                       Labels: map[string]string{\r
+                               "app.kubernetes.io/instance":   "release-name",\r
+                               "app.kubernetes.io/managed-by": "Helm",\r
+                               "app.kubernetes.io/name":       "kong",\r
+                               "app.kubernetes.io/version":    "1.4",\r
+                               "helm.sh/chart":                "kong-0.36.6",\r
+                       },\r
+                       Name: "release-name-kong",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "ServiceAccount",\r
+               },\r
+       }\r
+\r
+       serviceAccount5 := &corev1.ServiceAccount{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "svcacct-tiller-ricxapp",\r
+                       Namespace: "ricinfra",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "ServiceAccount",\r
+               },\r
+       }\r
+\r
+       serviceAccount6 := &corev1.ServiceAccount{\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "ServiceAccount",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "tiller-secret-creator-xzhjjg",\r
+                       Namespace: "ricinfra",\r
+               },\r
+       }\r
+\r
+       serviceAccount7 := &corev1.ServiceAccount{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Labels: map[string]string{\r
+                               "app.kubernetes.io/instance":   "release-name",\r
+                               "app.kubernetes.io/managed-by": "Helm",\r
+                               "app.kubernetes.io/name":       "kong",\r
+                               "app.kubernetes.io/version":    "1.4",\r
+                               "helm.sh/chart":                "kong-0.36.6",\r
+                       },\r
+                       Name: "release-name-kong",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "ServiceAccount",\r
+               },\r
+       }\r
+\r
+       serviceAccount8 := &corev1.ServiceAccount{\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "ServiceAccount",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Annotations: map[string]string{\r
+                               "helm.sh/hook":               "pre-upgrade",\r
+                               "helm.sh/hook-delete-policy": "before-hook-creation,hook-succeeded",\r
+                       },\r
+                       Labels: map[string]string{\r
+                               "app.kubernetes.io/instance":   "release-name",\r
+                               "app.kubernetes.io/managed-by": "Helm",\r
+                               "app.kubernetes.io/name":       "kong",\r
+                               "app.kubernetes.io/version":    "1.4",\r
+                               "helm.sh/chart":                "kong-0.36.6",\r
+                       },\r
+                       Name: "release-name-kong",\r
+               },\r
+       }\r
+\r
+       serviceAccount9 := &corev1.ServiceAccount{\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "ServiceAccount",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "svcacct-ricplt-o1mediator",\r
+                       Namespace: "ricplt",\r
+               },\r
+       }\r
+\r
+       serviceAccount10 := &corev1.ServiceAccount{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "release-name-prometheus-alertmanager",\r
+                       Namespace: "ricplt",\r
+                       Labels: map[string]string{\r
+                               "component": "alertmanager",\r
+                               "heritage":  "Helm",\r
+                               "release":   "release-name",\r
+                               "app":       "prometheus",\r
+                               "chart":     "prometheus-11.3.0",\r
+                       },\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "ServiceAccount",\r
+               },\r
+       }\r
+\r
+       serviceAccount11 := &corev1.ServiceAccount{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Labels: map[string]string{\r
+                               "app":       "prometheus",\r
+                               "chart":     "prometheus-11.3.0",\r
+                               "component": "server",\r
+                               "heritage":  "Helm",\r
+                               "release":   "release-name",\r
+                       },\r
+                       Name:      "release-name-prometheus-server",\r
+                       Namespace: "ricplt",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       Kind:       "ServiceAccount",\r
+                       APIVersion: "v1",\r
+               },\r
+       }\r
\r
+       serviceAccount12 := &corev1.ServiceAccount{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name: "assigner-sa",\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "ServiceAccount",\r
+               },\r
+       }\r
+\r
+       return []*corev1.ServiceAccount{serviceAccount1, serviceAccount2, serviceAccount3, serviceAccount4, serviceAccount5, serviceAccount6, serviceAccount7, serviceAccount8, serviceAccount9, serviceAccount10, serviceAccount11, serviceAccount12}\r
 }
\ No newline at end of file
index 05247ef..639c7fe 100644 (file)
@@ -90,6 +90,7 @@ func GetService() []*corev1.Service {
                        Kind:       "Service",\r
                },\r
        }\r
+\r
        service3 := &corev1.Service{\r
                ObjectMeta: metav1.ObjectMeta{\r
                        Labels: map[string]string{\r
@@ -255,6 +256,42 @@ func GetService() []*corev1.Service {
                },\r
        }\r
 \r
+       service7 := &corev1.Service{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Labels: map[string]string{\r
+                               "app":      "ricplt-dbaas",\r
+                               "chart":    "dbaas-2.0.0",\r
+                               "heritage": "Helm",\r
+                               "release":  "release-name",\r
+                       },\r
+                       Name: "service-ricplt-dbaas-tcp",\r
+               },\r
+               Spec: corev1.ServiceSpec{\r
+                       ClusterIP: "None",\r
+                       Ports: []corev1.ServicePort{\r
+\r
+                               corev1.ServicePort{\r
+                                       Name:     "server",\r
+                                       Port:     6379,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               StrVal: "redis",\r
+                                               Type:   intstr.Type(1),\r
+                                       },\r
+                               },\r
+                       },\r
+                       PublishNotReadyAddresses: false,\r
+                       Selector: map[string]string{\r
+                               "app":     "ricplt-dbaas",\r
+                               "release": "release-name",\r
+                       },\r
+                       Type: corev1.ServiceType("ClusterIP"),\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Service",\r
+               },\r
+       }\r
 \r
        service8 := &corev1.Service{\r
                ObjectMeta: metav1.ObjectMeta{\r
@@ -464,5 +501,921 @@ func GetService() []*corev1.Service {
                },\r
        }\r
 \r
-       return []*corev1.Service{service1, service2, service3, service4,service5,service6,service8,service9,service10,service11,service12}\r
+       service13 := &corev1.Service{\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Service",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "aux-entry",\r
+                       Namespace: "ricplt",\r
+               },\r
+               Spec: corev1.ServiceSpec{\r
+                       Ports: []corev1.ServicePort{\r
+\r
+                               corev1.ServicePort{\r
+                                       Name:     "aux-entry-http-ingress-port",\r
+                                       Port:     80,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                               },\r
+                               corev1.ServicePort{\r
+                                       Name:     "aux-entry-https-ingress-port",\r
+                                       Port:     443,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                               },\r
+                       },\r
+                       PublishNotReadyAddresses: false,\r
+               },\r
+       }\r
+\r
+       service14 := &corev1.Service{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "aux-entry",\r
+                       Namespace: "ricxapp",\r
+               },\r
+               Spec: corev1.ServiceSpec{\r
+                       Ports: []corev1.ServicePort{\r
+\r
+                               corev1.ServicePort{\r
+                                       Name:     "aux-entry-http-ingress-port",\r
+                                       Port:     80,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                               },\r
+                               corev1.ServicePort{\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                                       Name:     "aux-entry-https-ingress-port",\r
+                                       Port:     443,\r
+                               },\r
+                       },\r
+                       PublishNotReadyAddresses: false,\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       Kind:       "Service",\r
+                       APIVersion: "v1",\r
+               },\r
+       }\r
+\r
+       service15 := &corev1.Service{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "aux-entry",\r
+                       Namespace: "ricplt",\r
+               },\r
+               Spec: corev1.ServiceSpec{\r
+                       Ports: []corev1.ServicePort{\r
+\r
+                               corev1.ServicePort{\r
+                                       Name:     "aux-entry-http-ingress-port",\r
+                                       Port:     80,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                               },\r
+                               corev1.ServicePort{\r
+                                       Name:     "aux-entry-https-ingress-port",\r
+                                       Port:     443,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                               },\r
+                       },\r
+                       PublishNotReadyAddresses: false,\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       Kind:       "Service",\r
+                       APIVersion: "v1",\r
+               },\r
+       }\r
+\r
+       service16 := &corev1.Service{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name:      "aux-entry",\r
+                       Namespace: "ricxapp",\r
+               },\r
+               Spec: corev1.ServiceSpec{\r
+                       Ports: []corev1.ServicePort{\r
+\r
+                               corev1.ServicePort{\r
+                                       Port:     80,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                                       Name:     "aux-entry-http-ingress-port",\r
+                               },\r
+                               corev1.ServicePort{\r
+                                       Name:     "aux-entry-https-ingress-port",\r
+                                       Port:     443,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                               },\r
+                       },\r
+                       PublishNotReadyAddresses: false,\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       Kind:       "Service",\r
+                       APIVersion: "v1",\r
+               },\r
+       }\r
+\r
+       service17 := &corev1.Service{\r
+               Spec: corev1.ServiceSpec{\r
+                       Selector: map[string]string{\r
+                               "app.kubernetes.io/instance":  "release-name",\r
+                               "app.kubernetes.io/name":      "kong",\r
+                               "app.kubernetes.io/component": "app",\r
+                       },\r
+                       Type: corev1.ServiceType("NodePort"),\r
+                       Ports: []corev1.ServicePort{\r
+\r
+                               corev1.ServicePort{\r
+                                       Name:     "kong-proxy",\r
+                                       NodePort: 32080,\r
+                                       Port:     32080,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               IntVal: 32080,\r
+                                       },\r
+                               },\r
+                               corev1.ServicePort{\r
+                                       Port:     32443,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               IntVal: 32443,\r
+                                       },\r
+                                       Name:     "kong-proxy-tls",\r
+                                       NodePort: 32443,\r
+                               },\r
+                       },\r
+                       PublishNotReadyAddresses: false,\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Service",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name: "release-name-kong-proxy",\r
+                       Labels: map[string]string{\r
+                               "app.kubernetes.io/instance":   "release-name",\r
+                               "app.kubernetes.io/managed-by": "Helm",\r
+                               "app.kubernetes.io/name":       "kong",\r
+                               "app.kubernetes.io/version":    "1.4",\r
+                               "helm.sh/chart":                "kong-0.36.6",\r
+                       },\r
+               },\r
+       }\r
+\r
+       service18 := &corev1.Service{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Labels: map[string]string{\r
+                               "app":  "helm",\r
+                               "name": "tiller",\r
+                       },\r
+                       Name:      "service-tiller-ricxapp",\r
+                       Namespace: "ricinfra",\r
+               },\r
+               Spec: corev1.ServiceSpec{\r
+                       PublishNotReadyAddresses: false,\r
+                       Selector: map[string]string{\r
+                               "app":  "helm",\r
+                               "name": "tiller",\r
+                       },\r
+                       Type: corev1.ServiceType("ClusterIP"),\r
+                       Ports: []corev1.ServicePort{\r
+\r
+                               corev1.ServicePort{\r
+                                       Name: "tiller",\r
+                                       Port: 44134,\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               StrVal: "tiller",\r
+                                               Type:   intstr.Type(1),\r
+                                       },\r
+                               },\r
+                       },\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Service",\r
+               },\r
+       }\r
+\r
+       service19 := &corev1.Service{\r
+               Spec: corev1.ServiceSpec{\r
+                       Ports: []corev1.ServicePort{\r
+\r
+                               corev1.ServicePort{\r
+                                       Port:     5775,\r
+                                       Protocol: corev1.Protocol("UDP"),\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               IntVal: 5775,\r
+                                       },\r
+                                       Name: "zipkincompact",\r
+                               },\r
+                               corev1.ServicePort{\r
+                                       Name:     "jaegercompact",\r
+                                       Port:     6831,\r
+                                       Protocol: corev1.Protocol("UDP"),\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               IntVal: 6831,\r
+                                       },\r
+                               },\r
+                               corev1.ServicePort{\r
+                                       Name:     "jaegerbinary",\r
+                                       Port:     6832,\r
+                                       Protocol: corev1.Protocol("UDP"),\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               IntVal: 6832,\r
+                                       },\r
+                               },\r
+                       },\r
+                       PublishNotReadyAddresses: false,\r
+                       Selector: map[string]string{\r
+                               "release": "release-name",\r
+                               "app":     "ricplt-jaegeradapter",\r
+                       },\r
+                       Type: corev1.ServiceType("ClusterIP"),\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       Kind:       "Service",\r
+                       APIVersion: "v1",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Labels: map[string]string{\r
+                               "app":      "ricplt-jaegeradapter",\r
+                               "chart":    "jaegeradapter-3.0.0",\r
+                               "heritage": "Helm",\r
+                               "release":  "release-name",\r
+                       },\r
+                       Name:      "service-ricplt-jaegeradapter-agent",\r
+                       Namespace: "ricplt",\r
+               },\r
+       }\r
+\r
+       service20 := &corev1.Service{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Labels: map[string]string{\r
+                               "app":      "ricplt-jaegeradapter",\r
+                               "chart":    "jaegeradapter-3.0.0",\r
+                               "heritage": "Helm",\r
+                               "release":  "release-name",\r
+                       },\r
+                       Name:      "service-ricplt-jaegeradapter-collector",\r
+                       Namespace: "ricplt",\r
+               },\r
+               Spec: corev1.ServiceSpec{\r
+                       Ports: []corev1.ServicePort{\r
+\r
+                               corev1.ServicePort{\r
+                                       Name:     "jaegerhttpt",\r
+                                       Port:     14267,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               IntVal: 14267,\r
+                                       },\r
+                               },\r
+                               corev1.ServicePort{\r
+                                       Port:     14268,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               IntVal: 14268,\r
+                                       },\r
+                                       Name: "jaegerhttp",\r
+                               },\r
+                               corev1.ServicePort{\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               IntVal: 9411,\r
+                                       },\r
+                                       Name: "zipkinhttp",\r
+                                       Port: 9411,\r
+                               },\r
+                       },\r
+                       PublishNotReadyAddresses: false,\r
+                       Selector: map[string]string{\r
+                               "app":     "ricplt-jaegeradapter",\r
+                               "release": "release-name",\r
+                       },\r
+                       Type: corev1.ServiceType("ClusterIP"),\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Service",\r
+               },\r
+       }\r
+\r
+       service21 := &corev1.Service{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Labels: map[string]string{\r
+                               "app":      "ricplt-jaegeradapter",\r
+                               "chart":    "jaegeradapter-3.0.0",\r
+                               "heritage": "Helm",\r
+                               "release":  "release-name",\r
+                       },\r
+                       Name:      "service-ricplt-jaegeradapter-query",\r
+                       Namespace: "ricplt",\r
+               },\r
+               Spec: corev1.ServiceSpec{\r
+                       Selector: map[string]string{\r
+                               "app":     "ricplt-jaegeradapter",\r
+                               "release": "release-name",\r
+                       },\r
+                       Type: corev1.ServiceType("ClusterIP"),\r
+                       Ports: []corev1.ServicePort{\r
+\r
+                               corev1.ServicePort{\r
+                                       Name:     "httpquery",\r
+                                       Port:     16686,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               IntVal: 16686,\r
+                                       },\r
+                               },\r
+                       },\r
+                       PublishNotReadyAddresses: false,\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       Kind:       "Service",\r
+                       APIVersion: "v1",\r
+               },\r
+       }\r
+\r
+       service22 := &corev1.Service{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Labels: map[string]string{\r
+                               "app.kubernetes.io/managed-by": "Helm",\r
+                               "app.kubernetes.io/name":       "kong",\r
+                               "app.kubernetes.io/version":    "1.4",\r
+                               "helm.sh/chart":                "kong-0.36.6",\r
+                               "app.kubernetes.io/instance":   "release-name",\r
+                       },\r
+                       Name: "release-name-kong-proxy",\r
+               },\r
+               Spec: corev1.ServiceSpec{\r
+                       Type: corev1.ServiceType("NodePort"),\r
+                       Ports: []corev1.ServicePort{\r
+\r
+                               corev1.ServicePort{\r
+                                       NodePort: 32080,\r
+                                       Port:     32080,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               IntVal: 32080,\r
+                                       },\r
+                                       Name: "kong-proxy",\r
+                               },\r
+                               corev1.ServicePort{\r
+                                       Port:     32443,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               IntVal: 32443,\r
+                                       },\r
+                                       Name:     "kong-proxy-tls",\r
+                                       NodePort: 32443,\r
+                               },\r
+                       },\r
+                       PublishNotReadyAddresses: false,\r
+                       Selector: map[string]string{\r
+                               "app.kubernetes.io/component": "app",\r
+                               "app.kubernetes.io/instance":  "release-name",\r
+                               "app.kubernetes.io/name":      "kong",\r
+                       },\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Service",\r
+               },\r
+       }\r
+\r
+       service23 := &corev1.Service{\r
+               Spec: corev1.ServiceSpec{\r
+                       Ports: []corev1.ServicePort{\r
+\r
+                               corev1.ServicePort{\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               IntVal: 9001,\r
+                                       },\r
+                                       Name:     "http-supervise",\r
+                                       Port:     9001,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                               },\r
+                               corev1.ServicePort{\r
+                                       Port:     8080,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               IntVal: 8080,\r
+                                       },\r
+                                       Name: "http-mediation",\r
+                               },\r
+                               corev1.ServicePort{\r
+                                       Port:     3000,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               IntVal: 3000,\r
+                                       },\r
+                                       Name: "http-event",\r
+                               },\r
+                       },\r
+                       PublishNotReadyAddresses: false,\r
+                       Selector: map[string]string{\r
+                               "app":     "ricplt-o1mediator",\r
+                               "release": "release-name",\r
+                       },\r
+                       Type: corev1.ServiceType("ClusterIP"),\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Service",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Namespace: "ricplt",\r
+                       Labels: map[string]string{\r
+                               "app":      "ricplt-o1mediator",\r
+                               "chart":    "o1mediator-3.0.0",\r
+                               "heritage": "Helm",\r
+                               "release":  "release-name",\r
+                       },\r
+                       Name: "service-ricplt-o1mediator-http",\r
+               },\r
+       }\r
+\r
+       service24 := &corev1.Service{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Namespace: "ricplt",\r
+                       Labels: map[string]string{\r
+                               "heritage": "Helm",\r
+                               "release":  "release-name",\r
+                               "app":      "ricplt-o1mediator",\r
+                               "chart":    "o1mediator-3.0.0",\r
+                       },\r
+                       Name: "service-ricplt-o1mediator-tcp-netconf",\r
+               },\r
+               Spec: corev1.ServiceSpec{\r
+                       Ports: []corev1.ServicePort{\r
+\r
+                               corev1.ServicePort{\r
+                                       Name:     "tcp-netconf",\r
+                                       NodePort: 30830,\r
+                                       Port:     830,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                               },\r
+                       },\r
+                       PublishNotReadyAddresses: false,\r
+                       Selector: map[string]string{\r
+                               "app":     "ricplt-o1mediator",\r
+                               "release": "release-name",\r
+                       },\r
+                       Type: corev1.ServiceType("NodePort"),\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Service",\r
+               },\r
+       }\r
+\r
+       service25 := &corev1.Service{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Labels: map[string]string{\r
+                               "app":       "prometheus",\r
+                               "chart":     "prometheus-11.3.0",\r
+                               "component": "alertmanager",\r
+                               "heritage":  "Helm",\r
+                               "release":   "release-name",\r
+                       },\r
+                       Name:      "release-name-prometheus-alertmanager",\r
+                       Namespace: "ricplt",\r
+               },\r
+               Spec: corev1.ServiceSpec{\r
+                       Type: corev1.ServiceType("ClusterIP"),\r
+                       Ports: []corev1.ServicePort{\r
+\r
+                               corev1.ServicePort{\r
+                                       Name:     "http",\r
+                                       Port:     80,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               IntVal: 9093,\r
+                                       },\r
+                               },\r
+                       },\r
+                       PublishNotReadyAddresses: false,\r
+                       Selector: map[string]string{\r
+                               "app":       "prometheus",\r
+                               "component": "alertmanager",\r
+                               "release":   "release-name",\r
+                       },\r
+                       SessionAffinity: corev1.ServiceAffinity("None"),\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Service",\r
+               },\r
+       }\r
+\r
+       service26 := &corev1.Service{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Labels: map[string]string{\r
+                               "app":       "prometheus",\r
+                               "chart":     "prometheus-11.3.0",\r
+                               "component": "server",\r
+                               "heritage":  "Helm",\r
+                               "release":   "release-name",\r
+                       },\r
+                       Name:      "release-name-prometheus-server",\r
+                       Namespace: "ricplt",\r
+               },\r
+               Spec: corev1.ServiceSpec{\r
+                       Ports: []corev1.ServicePort{\r
+\r
+                               corev1.ServicePort{\r
+                                       Name:     "http",\r
+                                       Port:     80,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               IntVal: 9090,\r
+                                       },\r
+                               },\r
+                       },\r
+                       PublishNotReadyAddresses: false,\r
+                       Selector: map[string]string{\r
+                               "release":   "release-name",\r
+                               "app":       "prometheus",\r
+                               "component": "server",\r
+                       },\r
+                       SessionAffinity: corev1.ServiceAffinity("None"),\r
+                       Type:            corev1.ServiceType("ClusterIP"),\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Service",\r
+               },\r
+       }\r
+\r
+       service27 := &corev1.Service{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Name: "redis-cluster-svc",\r
+               },\r
+               Spec: corev1.ServiceSpec{\r
+                       Selector: map[string]string{\r
+                               "app.kubernetes.io/instance": "release-name",\r
+                               "app.kubernetes.io/name":     "redis-cluster",\r
+                       },\r
+                       Type: corev1.ServiceType("ClusterIP"),\r
+                       Ports: []corev1.ServicePort{\r
+\r
+                               corev1.ServicePort{\r
+                                       Name: "client",\r
+                                       Port: 6379,\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               IntVal: 6379,\r
+                                       },\r
+                               },\r
+                               corev1.ServicePort{\r
+                                       Name: "gossip",\r
+                                       Port: 16379,\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               IntVal: 16379,\r
+                                       },\r
+                               },\r
+                       },\r
+                       PublishNotReadyAddresses: false,\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Service",\r
+               },\r
+       }\r
+\r
+       service28 := &corev1.Service{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Labels: map[string]string{\r
+                               "app":      "ricplt-rsm",\r
+                               "chart":    "rsm-3.0.0",\r
+                               "heritage": "Helm",\r
+                               "release":  "release-name",\r
+                       },\r
+                       Name:      "service-ricplt-rsm-http",\r
+                       Namespace: "ricplt",\r
+               },\r
+               Spec: corev1.ServiceSpec{\r
+                       PublishNotReadyAddresses: false,\r
+                       Selector: map[string]string{\r
+                               "app":     "ricplt-rsm",\r
+                               "release": "release-name",\r
+                       },\r
+                       Type: corev1.ServiceType("ClusterIP"),\r
+                       Ports: []corev1.ServicePort{\r
+\r
+                               corev1.ServicePort{\r
+                                       Port:     4800,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               StrVal: "http",\r
+                                               Type:   intstr.Type(1),\r
+                                       },\r
+                                       Name: "http",\r
+                               },\r
+                       },\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Service",\r
+               },\r
+       }\r
+\r
+       service29 := &corev1.Service{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Namespace: "ricplt",\r
+                       Labels: map[string]string{\r
+                               "app":      "ricplt-rsm",\r
+                               "chart":    "rsm-3.0.0",\r
+                               "heritage": "Helm",\r
+                               "release":  "release-name",\r
+                       },\r
+                       Name: "service-ricplt-rsm-rmr",\r
+               },\r
+               Spec: corev1.ServiceSpec{\r
+                       Ports: []corev1.ServicePort{\r
+\r
+                               corev1.ServicePort{\r
+                                       Name:     "rmrroute",\r
+                                       Port:     4561,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               StrVal: "rmrroute",\r
+                                               Type:   intstr.Type(1),\r
+                                       },\r
+                               },\r
+                               corev1.ServicePort{\r
+                                       Name:     "rmrdata",\r
+                                       Port:     4801,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               StrVal: "rmrdata",\r
+                                               Type:   intstr.Type(1),\r
+                                       },\r
+                               },\r
+                       },\r
+                       PublishNotReadyAddresses: false,\r
+                       Selector: map[string]string{\r
+                               "release": "release-name",\r
+                               "app":     "ricplt-rsm",\r
+                       },\r
+                       Type: corev1.ServiceType("ClusterIP"),\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Service",\r
+               },\r
+       }\r
+\r
+       service30 := &corev1.Service{\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Service",\r
+               },\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Labels: map[string]string{\r
+                               "app":      "ricplt-rtmgr",\r
+                               "chart":    "rtmgr-3.0.0",\r
+                               "heritage": "Helm",\r
+                               "release":  "release-name",\r
+                       },\r
+                       Name:      "service-ricplt-rtmgr-http",\r
+                       Namespace: "ricplt",\r
+               },\r
+               Spec: corev1.ServiceSpec{\r
+                       PublishNotReadyAddresses: false,\r
+                       Selector: map[string]string{\r
+                               "app":     "ricplt-rtmgr",\r
+                               "release": "release-name",\r
+                       },\r
+                       Type: corev1.ServiceType("ClusterIP"),\r
+                       Ports: []corev1.ServicePort{\r
+\r
+                               corev1.ServicePort{\r
+                                       Name:     "http",\r
+                                       Port:     3800,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               StrVal: "http",\r
+                                               Type:   intstr.Type(1),\r
+                                       },\r
+                               },\r
+                       },\r
+               },\r
+       }\r
+\r
+       service31 := &corev1.Service{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Namespace: "ricplt",\r
+                       Labels: map[string]string{\r
+                               "app":      "ricplt-rtmgr",\r
+                               "chart":    "rtmgr-3.0.0",\r
+                               "heritage": "Helm",\r
+                               "release":  "release-name",\r
+                       },\r
+                       Name: "service-ricplt-rtmgr-rmr",\r
+               },\r
+               Spec: corev1.ServiceSpec{\r
+                       Selector: map[string]string{\r
+                               "app":     "ricplt-rtmgr",\r
+                               "release": "release-name",\r
+                       },\r
+                       Type: corev1.ServiceType("ClusterIP"),\r
+                       Ports: []corev1.ServicePort{\r
+\r
+                               corev1.ServicePort{\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               Type:   intstr.Type(1),\r
+                                               StrVal: "rmrroute",\r
+                                       },\r
+                                       Name: "rmrroute",\r
+                                       Port: 4561,\r
+                               },\r
+                               corev1.ServicePort{\r
+                                       Port:     4560,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               StrVal: "rmrdata",\r
+                                               Type:   intstr.Type(1),\r
+                                       },\r
+                                       Name: "rmrdata",\r
+                               },\r
+                       },\r
+                       PublishNotReadyAddresses: false,\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Service",\r
+               },\r
+       }\r
+\r
+       service32 := &corev1.Service{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Labels: map[string]string{\r
+                               "app":      "ricplt-submgr",\r
+                               "chart":    "submgr-3.0.0",\r
+                               "heritage": "Helm",\r
+                               "release":  "release-name",\r
+                       },\r
+                       Name:      "service-ricplt-submgr-http",\r
+                       Namespace: "ricplt",\r
+               },\r
+               Spec: corev1.ServiceSpec{\r
+                       ClusterIP: "None",\r
+                       Ports: []corev1.ServicePort{\r
+\r
+                               corev1.ServicePort{\r
+                                       Name:     "http",\r
+                                       Port:     3800,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               StrVal: "http",\r
+                                               Type:   intstr.Type(1),\r
+                                       },\r
+                               },\r
+                       },\r
+                       PublishNotReadyAddresses: false,\r
+                       Selector: map[string]string{\r
+                               "app":     "ricplt-submgr",\r
+                               "release": "release-name",\r
+                       },\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Service",\r
+               },\r
+       }\r
+\r
+       service33 := &corev1.Service{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Labels: map[string]string{\r
+                               "app":      "ricplt-submgr",\r
+                               "chart":    "submgr-3.0.0",\r
+                               "heritage": "Helm",\r
+                               "release":  "release-name",\r
+                       },\r
+                       Name:      "service-ricplt-submgr-rmr",\r
+                       Namespace: "ricplt",\r
+               },\r
+               Spec: corev1.ServiceSpec{\r
+                       ClusterIP: "None",\r
+                       Ports: []corev1.ServicePort{\r
+\r
+                               corev1.ServicePort{\r
+                                       Port:     4560,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               Type:   intstr.Type(1),\r
+                                               StrVal: "rmrdata",\r
+                                       },\r
+                                       Name: "rmrdata",\r
+                               },\r
+                               corev1.ServicePort{\r
+                                       Name:     "rmrroute",\r
+                                       Port:     4561,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               StrVal: "rmrroute",\r
+                                               Type:   intstr.Type(1),\r
+                                       },\r
+                               },\r
+                       },\r
+                       PublishNotReadyAddresses: false,\r
+                       Selector: map[string]string{\r
+                               "app":     "ricplt-submgr",\r
+                               "release": "release-name",\r
+                       },\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       Kind:       "Service",\r
+                       APIVersion: "v1",\r
+               },\r
+       }\r
+\r
+       service34 := &corev1.Service{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Labels: map[string]string{\r
+                               "app":      "ricplt-vespamgr",\r
+                               "chart":    "vespamgr-3.0.0",\r
+                               "heritage": "Helm",\r
+                               "release":  "release-name",\r
+                       },\r
+                       Name:      "service-ricplt-vespamgr-http",\r
+                       Namespace: "ricplt",\r
+               },\r
+               Spec: corev1.ServiceSpec{\r
+                       Selector: map[string]string{\r
+                               "app":     "ricplt-vespamgr",\r
+                               "release": "release-name",\r
+                       },\r
+                       Type: corev1.ServiceType("ClusterIP"),\r
+                       Ports: []corev1.ServicePort{\r
+\r
+                               corev1.ServicePort{\r
+                                       Name:     "http",\r
+                                       Port:     8080,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               StrVal: "http",\r
+                                               Type:   intstr.Type(1),\r
+                                       },\r
+                               },\r
+                               corev1.ServicePort{\r
+                                       Name:     "alert",\r
+                                       Port:     9095,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               StrVal: "alert",\r
+                                               Type:   intstr.Type(1),\r
+                                       },\r
+                               },\r
+                       },\r
+                       PublishNotReadyAddresses: false,\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       Kind:       "Service",\r
+                       APIVersion: "v1",\r
+               },\r
+       }\r
+\r
+       service35 := &corev1.Service{\r
+               ObjectMeta: metav1.ObjectMeta{\r
+                       Labels: map[string]string{\r
+                               "app":      "ricplt-xapp-onboarder",\r
+                               "chart":    "xapp-onboarder-3.0.0",\r
+                               "heritage": "Helm",\r
+                               "release":  "release-name",\r
+                       },\r
+                       Name:      "service-ricplt-xapp-onboarder-http",\r
+                       Namespace: "ricplt",\r
+               },\r
+               Spec: corev1.ServiceSpec{\r
+                       Ports: []corev1.ServicePort{\r
+\r
+                               corev1.ServicePort{\r
+                                       Port:     8888,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               StrVal: "server",\r
+                                               Type:   intstr.Type(1),\r
+                                       },\r
+                                       Name: "server",\r
+                               },\r
+                               corev1.ServicePort{\r
+                                       Port:     8080,\r
+                                       Protocol: corev1.Protocol("TCP"),\r
+                                       TargetPort: intstr.IntOrString{\r
+                                               StrVal: "chartmuseum",\r
+                                               Type:   intstr.Type(1),\r
+                                       },\r
+                                       Name: "chartmuseum",\r
+                               },\r
+                       },\r
+                       PublishNotReadyAddresses: false,\r
+                       Selector: map[string]string{\r
+                               "app":     "ricplt-xapp-onboarder",\r
+                               "release": "release-name",\r
+                       },\r
+                       Type: corev1.ServiceType("ClusterIP"),\r
+               },\r
+               TypeMeta: metav1.TypeMeta{\r
+                       APIVersion: "v1",\r
+                       Kind:       "Service",\r
+               },\r
+       }\r
+\r
+       return []*corev1.Service{service1, service2, service3, service4, service5, service6, service7, service8, service9, service10, service11, service12, service13, service14, service15, service16, service17, service18, service19, service20, service21, service22, service23, service24, service25, service26, service27, service28, service29, service30, service31, service32, service33, service34, service35}\r
 }\r