@@ -43,7 +43,7 @@ import (
4343 "k8s.io/client-go/restmapper"
4444)
4545
46- var appwrapperJobName = "appwrapper.mcad.ibm.com"
46+ var appwrapperJobLabelName = "appwrapper.mcad.ibm.com"
4747var resourceName = "resourceName"
4848var appWrapperKind = arbv1 .SchemeGroupVersion .WithKind ("AppWrapper" )
4949
@@ -163,7 +163,7 @@ func (gr *GenericResources) Cleanup(aw *arbv1.AppWrapper, awr *arbv1.AppWrapperG
163163 }
164164
165165 // Get the resource to see if it exists
166- labelSelector := fmt .Sprintf ("%s=%s, %s=%s" , appwrapperJobName , aw .Name , resourceName , unstruct .GetName ())
166+ labelSelector := fmt .Sprintf ("%s=%s, %s=%s" , appwrapperJobLabelName , aw .Name , resourceName , unstruct . GetNamespace () + "-" + unstruct .GetName ())
167167 inEtcd , err := dclient .Resource (rsrc ).List (context .Background (), metav1.ListOptions {LabelSelector : labelSelector })
168168 if err != nil {
169169 return name , gvk , err
@@ -172,8 +172,8 @@ func (gr *GenericResources) Cleanup(aw *arbv1.AppWrapper, awr *arbv1.AppWrapperG
172172 // Check to see if object already exists in etcd, if not, create the object.
173173 if inEtcd != nil || len (inEtcd .Items ) > 0 {
174174 newName := name
175- if len (newName ) > 63 {
176- newName = newName [:63 ]
175+ if len (newName + namespace ) > 63 {
176+ newName = newName [:len ( newName ) - ( len ( newName ) + len ( namespace ) - 63 ) ]
177177 }
178178
179179 err = deleteObject (namespaced , namespace , newName , rsrc , dclient )
@@ -184,7 +184,7 @@ func (gr *GenericResources) Cleanup(aw *arbv1.AppWrapper, awr *arbv1.AppWrapperG
184184 return name , gvk , err
185185 }
186186 } else {
187- klog .Warningf ("[Cleanup] %s/%s not found using label selector: %s.\n " , name , namespace , labelSelector )
187+ klog .Warningf ("[Cleanup] %s/%s not found using label selector: %s.\n " , namespace , name , labelSelector )
188188 }
189189
190190 return name , gvk , err
@@ -291,18 +291,18 @@ func (gr *GenericResources) SyncQueueJob(aw *arbv1.AppWrapper, awr *arbv1.AppWra
291291 } else {
292292 labels = unstruct .GetLabels ()
293293 }
294- labels [appwrapperJobName ] = aw .Name
295- labels [resourceName ] = unstruct .GetName ()
294+ labels [appwrapperJobLabelName ] = aw .Name
295+ labels [resourceName ] = unstruct .GetNamespace () + "-" + unstruct . GetName ()
296296 unstruct .SetLabels (labels )
297297
298298 // Add labels to pod template if one exists.
299299 podTemplateFound := addLabelsToPodTemplateField (& unstruct , labels )
300300 if ! podTemplateFound {
301- klog .V (4 ).Infof ("[SyncQueueJob] No pod template spec exists for resource: %s to add labels." , name )
301+ klog .V (4 ).Infof ("[SyncQueueJob] No pod template spec exists for resource: %s/%s to add labels." , namespace , name )
302302 }
303303
304- // Get the resource to see if it exists
305- labelSelector := fmt .Sprintf ("%s=%s, %s=%s" , appwrapperJobName , aw .Name , resourceName , unstruct .GetName ())
304+ // Get the resource to see if it exists
305+ labelSelector := fmt .Sprintf ("%s=%s, %s=%s" , appwrapperJobLabelName , aw .Name , resourceName , unstruct . GetNamespace () + "-" + unstruct .GetName ())
306306 inEtcd , err := dclient .Resource (rsrc ).List (context .Background (), metav1.ListOptions {LabelSelector : labelSelector })
307307 if err != nil {
308308 return []* v1.Pod {}, err
@@ -311,8 +311,8 @@ func (gr *GenericResources) SyncQueueJob(aw *arbv1.AppWrapper, awr *arbv1.AppWra
311311 // Check to see if object already exists in etcd, if not, create the object.
312312 if inEtcd == nil || len (inEtcd .Items ) < 1 {
313313 newName := name
314- if len (newName ) > 63 {
315- newName = newName [:63 ]
314+ if len (newName + namespace ) > 63 {
315+ newName = newName [:len ( newName ) - ( len ( newName ) + len ( namespace ) - 63 ) ]
316316 }
317317 unstruct .SetName (newName )
318318 //Asumption object is always namespaced
@@ -323,7 +323,7 @@ func (gr *GenericResources) SyncQueueJob(aw *arbv1.AppWrapper, awr *arbv1.AppWra
323323 if errors .IsAlreadyExists (err ) {
324324 klog .V (4 ).Infof ("%v\n " , err .Error ())
325325 } else {
326- klog .Errorf ("Error creating the object `%v `, the error is `%v`" , newName , errors .ReasonForError (err ))
326+ klog .Errorf ("Error creating the object `%s/%s `, the error is `%v`" , namespace , newName , errors .ReasonForError (err ))
327327 return []* v1.Pod {}, err
328328 }
329329 }
@@ -493,7 +493,7 @@ func deleteObject(namespaced bool, namespace string, name string, rsrc schema.Gr
493493 }
494494
495495 if err != nil && ! errors .IsNotFound (err ) {
496- klog .Errorf ("[deleteObject] Error deleting the object `%v`, the error is `%v`." , name , errors .ReasonForError (err ))
496+ klog .Errorf ("[deleteObject] Error deleting the object `%v`, in namespace %v, the error is `%v`." , name , namespace , errors .ReasonForError (err ))
497497 return err
498498 } else {
499499 klog .V (4 ).Infof ("[deleteObject] Resource `%v` deleted.\n " , name )
@@ -525,7 +525,7 @@ func GetListOfPodResourcesFromOneGenericItem(awr *arbv1.AppWrapperGenericResourc
525525 klog .V (8 ).Infof ("[GetListOfPodResourcesFromOneGenericItem] Requested total allocation resource from 1 pod `%v`.\n " , podTotalresource )
526526 }
527527
528- // Addd individual pods to results
528+ // Add individual pods to results
529529 var replicaCount int = int (replicas )
530530 for i := 0 ; i < replicaCount ; i ++ {
531531 podResourcesList = append (podResourcesList , podTotalresource )
@@ -617,7 +617,7 @@ func getContainerResources(container v1.Container, replicas float64) *clustersta
617617}
618618
619619// returns status of an item present in etcd
620- func (gr * GenericResources ) IsItemCompleted (awgr * arbv1.AppWrapperGenericResource , namespace string , appwrapperName string , genericItemName string ) (completed bool ) {
620+ func (gr * GenericResources ) IsItemCompleted (awgr * arbv1.AppWrapperGenericResource , appwrapperNamespace string , appwrapperName string , genericItemName string ) (completed bool ) {
621621 dd := gr .clients .Discovery ()
622622 apigroups , err := restmapper .GetAPIGroupResources (dd )
623623 if err != nil {
@@ -648,8 +648,8 @@ func (gr *GenericResources) IsItemCompleted(awgr *arbv1.AppWrapperGenericResourc
648648 return false
649649 }
650650
651- labelSelector := fmt .Sprintf ("%s=%s" , appwrapperJobName , appwrapperName )
652- inEtcd , err := dclient .Resource (rsrc ).Namespace (namespace ).List (context .Background (), metav1.ListOptions {LabelSelector : labelSelector })
651+ labelSelector := fmt .Sprintf ("%s=%s" , appwrapperJobLabelName , appwrapperName )
652+ inEtcd , err := dclient .Resource (rsrc ).Namespace (appwrapperNamespace ).List (context .Background (), metav1.ListOptions {LabelSelector : labelSelector })
653653 if err != nil {
654654 klog .Errorf ("[IsItemCompleted] Error listing object: %v" , err )
655655 return false
@@ -669,7 +669,7 @@ func (gr *GenericResources) IsItemCompleted(awgr *arbv1.AppWrapperGenericResourc
669669 }
670670 }
671671 if ! validAwOwnerRef {
672- klog .Warningf ("[IsItemCompleted] Item owner name %v does match appwrappper name %v in namespace %v" , unstructuredObjectName , appwrapperName , namespace )
672+ klog .Warningf ("[IsItemCompleted] Item owner name %v does match appwrappper name %v in namespace %v" , unstructuredObjectName , appwrapperName , appwrapperNamespace )
673673 continue
674674 }
675675
0 commit comments