From 5a3c69d1f5cf5edb9353859f75d885dd71215be2 Mon Sep 17 00:00:00 2001 From: Ammar Hussein Date: Fri, 29 Nov 2024 22:56:27 -0800 Subject: [PATCH] check if labels are nil before adding labels --- pkg/app/compose.go | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/pkg/app/compose.go b/pkg/app/compose.go index 4d9573b8..e88c7d9e 100644 --- a/pkg/app/compose.go +++ b/pkg/app/compose.go @@ -16,7 +16,7 @@ func SetRecipeLabel(compose *composetypes.Config, stackName string, recipe strin if service.Name == "app" { log.Debugf("set recipe label 'coop-cloud.%s.recipe' to %s for %s", stackName, recipe, stackName) labelKey := fmt.Sprintf("coop-cloud.%s.recipe", stackName) - service.Deploy.Labels[labelKey] = recipe + AddLabel(service, labelKey, recipe) } } } @@ -28,7 +28,7 @@ func SetChaosLabel(compose *composetypes.Config, stackName string, chaos bool) { if service.Name == "app" { log.Debugf("set label 'coop-cloud.%s.chaos' to %v for %s", stackName, chaos, stackName) labelKey := fmt.Sprintf("coop-cloud.%s.chaos", stackName) - service.Deploy.Labels[labelKey] = strconv.FormatBool(chaos) + AddLabel(service, labelKey, strconv.FormatBool(chaos)) } } } @@ -39,7 +39,7 @@ func SetChaosVersionLabel(compose *composetypes.Config, stackName string, chaosV if service.Name == "app" { log.Debugf("set label 'coop-cloud.%s.chaos-version' to %v for %s", stackName, chaosVersion, stackName) labelKey := fmt.Sprintf("coop-cloud.%s.chaos-version", stackName) - service.Deploy.Labels[labelKey] = chaosVersion + AddLabel(service, labelKey, chaosVersion) } } } @@ -56,7 +56,7 @@ func SetUpdateLabel(compose *composetypes.Config, stackName string, appEnv envfi } log.Debugf("set label 'coop-cloud.%s.autoupdate' to %s for %s", stackName, enable_auto_update, stackName) labelKey := fmt.Sprintf("coop-cloud.%s.autoupdate", stackName) - service.Deploy.Labels[labelKey] = enable_auto_update + AddLabel(service, labelKey, enable_auto_update) } } } @@ -86,3 +86,10 @@ func GetTimeoutFromLabel(compose *composetypes.Config, stackName string) (int, e } return timeout, err } + +func AddLabel(service composetypes.ServiceConfig, labelKey string, value string) { + if service.Deploy.Labels == nil { + service.Deploy.Labels = composetypes.Labels{} + } + service.Deploy.Labels[labelKey] = value +} -- 2.47.2