Skip to content

Commit 7ea5a7a

Browse files
committed
handle nil pointer for empty resource and request limits
1 parent 42d5c47 commit 7ea5a7a

File tree

1 file changed

+24
-13
lines changed

1 file changed

+24
-13
lines changed

controllers/syncer/csi_controller.go

Lines changed: 24 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -289,15 +289,20 @@ func getSidecarByName(driver *crutils.IBMObjectCSI, name string) *objectdriverv1
289289
func getCSIControllerResourceRequests(driver *crutils.IBMObjectCSI) corev1.ResourceRequirements {
290290
resources := driver.GetCSIControllerResourceRequests()
291291

292-
requests := corev1.ResourceList{
293-
corev1.ResourceCPU: resource.MustParse(resources.Requests.CPU),
294-
corev1.ResourceMemory: resource.MustParse(resources.Requests.Memory),
292+
var requests, limits corev1.ResourceList
293+
294+
if resources.Requests.CPU != "" && resources.Requests.Memory != "" {
295+
requests = corev1.ResourceList{
296+
corev1.ResourceCPU: resource.MustParse(resources.Requests.CPU),
297+
corev1.ResourceMemory: resource.MustParse(resources.Requests.Memory),
298+
}
295299
}
296-
limits := corev1.ResourceList{
297-
corev1.ResourceCPU: resource.MustParse(resources.Limits.CPU),
298-
corev1.ResourceMemory: resource.MustParse(resources.Limits.Memory),
300+
if resources.Limits.CPU != "" && resources.Limits.Memory != "" {
301+
limits = corev1.ResourceList{
302+
corev1.ResourceCPU: resource.MustParse(resources.Limits.CPU),
303+
corev1.ResourceMemory: resource.MustParse(resources.Limits.Memory),
304+
}
299305
}
300-
301306
return corev1.ResourceRequirements{
302307
Limits: limits,
303308
Requests: requests,
@@ -312,13 +317,19 @@ func getSidecarResourceRequests(driver *crutils.IBMObjectCSI, sidecarName string
312317
if sidecar != nil {
313318
resources := sidecar.Resources
314319

315-
requests := corev1.ResourceList{
316-
corev1.ResourceCPU: resource.MustParse(resources.Requests.CPU),
317-
corev1.ResourceMemory: resource.MustParse(resources.Requests.Memory),
320+
var requests, limits corev1.ResourceList
321+
322+
if resources.Requests.CPU != "" && resources.Requests.Memory != "" {
323+
requests = corev1.ResourceList{
324+
corev1.ResourceCPU: resource.MustParse(resources.Requests.CPU),
325+
corev1.ResourceMemory: resource.MustParse(resources.Requests.Memory),
326+
}
318327
}
319-
limits := corev1.ResourceList{
320-
corev1.ResourceCPU: resource.MustParse(resources.Limits.CPU),
321-
corev1.ResourceMemory: resource.MustParse(resources.Limits.Memory),
328+
if resources.Limits.CPU != "" && resources.Limits.Memory != "" {
329+
limits = corev1.ResourceList{
330+
corev1.ResourceCPU: resource.MustParse(resources.Limits.CPU),
331+
corev1.ResourceMemory: resource.MustParse(resources.Limits.Memory),
332+
}
322333
}
323334

324335
sidecarResources.Limits = limits

0 commit comments

Comments
 (0)