aboutsummaryrefslogtreecommitdiffstats
path: root/src/monitor/pkg/controller/resourcebundlestate/helpers.go
diff options
context:
space:
mode:
authorRitu Sood <Ritu.Sood@intel.com>2019-08-28 20:35:09 +0000
committerGerrit Code Review <gerrit@onap.org>2019-08-28 20:35:09 +0000
commitc5218d2a9d3d6ff009a87e7f1e999a8b5c0332d3 (patch)
tree8d3522a941fdc85ef24e6294c9bd9eb9d4b1b251 /src/monitor/pkg/controller/resourcebundlestate/helpers.go
parentb8f0a1c74947c50b3f1a5b3e3ca7cb6e4ccc7ab9 (diff)
parentab8c95eff5c1228237f758d3ccfc99c751f713f7 (diff)
Merge "Adding monitor operator to monitor edge resources"
Diffstat (limited to 'src/monitor/pkg/controller/resourcebundlestate/helpers.go')
-rw-r--r--src/monitor/pkg/controller/resourcebundlestate/helpers.go54
1 files changed, 54 insertions, 0 deletions
diff --git a/src/monitor/pkg/controller/resourcebundlestate/helpers.go b/src/monitor/pkg/controller/resourcebundlestate/helpers.go
new file mode 100644
index 00000000..dab78825
--- /dev/null
+++ b/src/monitor/pkg/controller/resourcebundlestate/helpers.go
@@ -0,0 +1,54 @@
+package resourcebundlestate
+
+import (
+ "context"
+ "log"
+
+ "k8s.io/apimachinery/pkg/labels"
+ "k8s.io/apimachinery/pkg/runtime"
+ "sigs.k8s.io/controller-runtime/pkg/client"
+)
+
+// checkLabel verifies if the expected label exists and returns bool
+func checkLabel(labels map[string]string) bool {
+
+ _, ok := labels["k8splugin.io/rb-inst-id"]
+ if !ok {
+ log.Printf("Pod does not have label. Filter it.")
+ return false
+ }
+ return true
+}
+
+// returnLabel verifies if the expected label exists and returns a map
+func returnLabel(labels map[string]string) map[string]string {
+
+ l, ok := labels["k8splugin.io/rb-inst-id"]
+ if !ok {
+ log.Printf("Pod does not have label. Filter it.")
+ return nil
+ }
+ return map[string]string{
+ "k8splugin.io/rb-inst-id": l,
+ }
+}
+
+// listResources lists resources based on the selectors provided
+// The data is returned in the pointer to the runtime.Object
+// provided as argument.
+func listResources(cli client.Client, namespace string,
+ labelSelector map[string]string, returnData runtime.Object) error {
+
+ listOptions := &client.ListOptions{
+ Namespace: namespace,
+ LabelSelector: labels.SelectorFromSet(labelSelector),
+ }
+
+ err := cli.List(context.TODO(), listOptions, returnData)
+ if err != nil {
+ log.Printf("Failed to list CRs: %v", err)
+ return err
+ }
+
+ return nil
+}