@@ -43,7 +43,7 @@ import (
43
43
"k8s.io/client-go/restmapper"
44
44
)
45
45
46
- var appwrapperJobName = "appwrapper.mcad.ibm.com"
46
+ var appwrapperJobLabelName = "appwrapper.mcad.ibm.com"
47
47
var resourceName = "resourceName"
48
48
var appWrapperKind = arbv1 .SchemeGroupVersion .WithKind ("AppWrapper" )
49
49
@@ -163,7 +163,7 @@ func (gr *GenericResources) Cleanup(aw *arbv1.AppWrapper, awr *arbv1.AppWrapperG
163
163
}
164
164
165
165
// 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 ())
167
167
inEtcd , err := dclient .Resource (rsrc ).List (context .Background (), metav1.ListOptions {LabelSelector : labelSelector })
168
168
if err != nil {
169
169
return name , gvk , err
@@ -172,8 +172,8 @@ func (gr *GenericResources) Cleanup(aw *arbv1.AppWrapper, awr *arbv1.AppWrapperG
172
172
// Check to see if object already exists in etcd, if not, create the object.
173
173
if inEtcd != nil || len (inEtcd .Items ) > 0 {
174
174
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 ) ]
177
177
}
178
178
179
179
err = deleteObject (namespaced , namespace , newName , rsrc , dclient )
@@ -184,7 +184,7 @@ func (gr *GenericResources) Cleanup(aw *arbv1.AppWrapper, awr *arbv1.AppWrapperG
184
184
return name , gvk , err
185
185
}
186
186
} 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 )
188
188
}
189
189
190
190
return name , gvk , err
@@ -291,18 +291,18 @@ func (gr *GenericResources) SyncQueueJob(aw *arbv1.AppWrapper, awr *arbv1.AppWra
291
291
} else {
292
292
labels = unstruct .GetLabels ()
293
293
}
294
- labels [appwrapperJobName ] = aw .Name
295
- labels [resourceName ] = unstruct .GetName ()
294
+ labels [appwrapperJobLabelName ] = aw .Name
295
+ labels [resourceName ] = unstruct .GetNamespace () + "-" + unstruct . GetName ()
296
296
unstruct .SetLabels (labels )
297
297
298
298
// Add labels to pod template if one exists.
299
299
podTemplateFound := addLabelsToPodTemplateField (& unstruct , labels )
300
300
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 )
302
302
}
303
303
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 ())
306
306
inEtcd , err := dclient .Resource (rsrc ).List (context .Background (), metav1.ListOptions {LabelSelector : labelSelector })
307
307
if err != nil {
308
308
return []* v1.Pod {}, err
@@ -311,8 +311,8 @@ func (gr *GenericResources) SyncQueueJob(aw *arbv1.AppWrapper, awr *arbv1.AppWra
311
311
// Check to see if object already exists in etcd, if not, create the object.
312
312
if inEtcd == nil || len (inEtcd .Items ) < 1 {
313
313
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 ) ]
316
316
}
317
317
unstruct .SetName (newName )
318
318
//Asumption object is always namespaced
@@ -323,7 +323,7 @@ func (gr *GenericResources) SyncQueueJob(aw *arbv1.AppWrapper, awr *arbv1.AppWra
323
323
if errors .IsAlreadyExists (err ) {
324
324
klog .V (4 ).Infof ("%v\n " , err .Error ())
325
325
} 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 ))
327
327
return []* v1.Pod {}, err
328
328
}
329
329
}
@@ -493,7 +493,7 @@ func deleteObject(namespaced bool, namespace string, name string, rsrc schema.Gr
493
493
}
494
494
495
495
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 ))
497
497
return err
498
498
} else {
499
499
klog .V (4 ).Infof ("[deleteObject] Resource `%v` deleted.\n " , name )
@@ -525,7 +525,7 @@ func GetListOfPodResourcesFromOneGenericItem(awr *arbv1.AppWrapperGenericResourc
525
525
klog .V (8 ).Infof ("[GetListOfPodResourcesFromOneGenericItem] Requested total allocation resource from 1 pod `%v`.\n " , podTotalresource )
526
526
}
527
527
528
- // Addd individual pods to results
528
+ // Add individual pods to results
529
529
var replicaCount int = int (replicas )
530
530
for i := 0 ; i < replicaCount ; i ++ {
531
531
podResourcesList = append (podResourcesList , podTotalresource )
@@ -617,7 +617,7 @@ func getContainerResources(container v1.Container, replicas float64) *clustersta
617
617
}
618
618
619
619
// 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 ) {
621
621
dd := gr .clients .Discovery ()
622
622
apigroups , err := restmapper .GetAPIGroupResources (dd )
623
623
if err != nil {
@@ -648,8 +648,8 @@ func (gr *GenericResources) IsItemCompleted(awgr *arbv1.AppWrapperGenericResourc
648
648
return false
649
649
}
650
650
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 })
653
653
if err != nil {
654
654
klog .Errorf ("[IsItemCompleted] Error listing object: %v" , err )
655
655
return false
@@ -669,7 +669,7 @@ func (gr *GenericResources) IsItemCompleted(awgr *arbv1.AppWrapperGenericResourc
669
669
}
670
670
}
671
671
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 )
673
673
continue
674
674
}
675
675
0 commit comments