From a1090ecbf95c68db56607a30f306ccd859c87a85 Mon Sep 17 00:00:00 2001 From: Hang Yan Date: Sun, 25 Feb 2018 14:32:00 +0800 Subject: [PATCH] Refactor label names to const strings --- pkg/loader/compose/utils.go | 9 +++++++++ pkg/loader/compose/v1v2.go | 10 +++++----- pkg/loader/compose/v3.go | 8 ++++---- 3 files changed, 18 insertions(+), 9 deletions(-) diff --git a/pkg/loader/compose/utils.go b/pkg/loader/compose/utils.go index a6a3ac6b..d776fce0 100644 --- a/pkg/loader/compose/utils.go +++ b/pkg/loader/compose/utils.go @@ -26,6 +26,15 @@ import ( "k8s.io/kubernetes/pkg/api" ) +const ( + // LabelServiceType defines the type of service to be created + LabelServiceType = "kompose.service.type" + // LabelServiceExpose defines if the service needs to be made accessible from outside the cluster or not + LabelServiceExpose = "kompose.service.expose" + // LabelServiceExposeTLSSecret provides the name of the TLS secret to use with the Kubernetes ingress controller + LabelServiceExposeTLSSecret = "kompose.service.expose.tls-secret" +) + // load environment variables from compose file func loadEnvVars(envars []string) []kobject.EnvVar { envs := []kobject.EnvVar{} diff --git a/pkg/loader/compose/v1v2.go b/pkg/loader/compose/v1v2.go index d0d78e16..0ccff8e9 100644 --- a/pkg/loader/compose/v1v2.go +++ b/pkg/loader/compose/v1v2.go @@ -233,25 +233,25 @@ func libComposeToKomposeMapping(composeObject *project.Project) (kobject.Kompose serviceConfig.Labels = make(map[string]string) for key, value := range composeServiceConfig.Labels { switch key { - case "kompose.service.type": + case LabelServiceType: serviceType, err := handleServiceType(value) if err != nil { return kobject.KomposeObject{}, errors.Wrap(err, "handleServiceType failed") } serviceConfig.ServiceType = serviceType - case "kompose.service.expose": + case LabelServiceExpose: serviceConfig.ExposeService = strings.ToLower(value) - case "kompose.service.expose.tls-secret": + case LabelServiceExposeTLSSecret: serviceConfig.ExposeServiceTLS = value default: serviceConfig.Labels[key] = value } } if serviceConfig.ExposeService == "" && serviceConfig.ExposeServiceTLS != "" { - return kobject.KomposeObject{}, errors.New("kompose.service.expose.tls-secret was specifed without kompose.service.expose") + return kobject.KomposeObject{}, errors.New("kompose.service.expose.tls-secret was specified without kompose.service.expose") } - err = checkLabelsPorts(len(serviceConfig.Port), composeServiceConfig.Labels["kompose.service.type"], name) + err = checkLabelsPorts(len(serviceConfig.Port), composeServiceConfig.Labels[LabelServiceType], name) if err != nil { return kobject.KomposeObject{}, errors.Wrap(err, "kompose.service.type can't be set if service doesn't expose any ports.") } diff --git a/pkg/loader/compose/v3.go b/pkg/loader/compose/v3.go index 8aa1a112..4c17f851 100644 --- a/pkg/loader/compose/v3.go +++ b/pkg/loader/compose/v3.go @@ -353,22 +353,22 @@ func dockerComposeToKomposeMapping(composeObject *types.Config) (kobject.Kompose // from here for docker-compose. Each loader will have such handler. for key, value := range composeServiceConfig.Labels { switch key { - case "kompose.service.type": + case LabelServiceType: serviceType, err := handleServiceType(value) if err != nil { return kobject.KomposeObject{}, errors.Wrap(err, "handleServiceType failed") } serviceConfig.ServiceType = serviceType - case "kompose.service.expose": + case LabelServiceExpose: serviceConfig.ExposeService = strings.ToLower(value) - case "kompose.service.expose.tls-secret": + case LabelServiceExposeTLSSecret: serviceConfig.ExposeServiceTLS = value } } if serviceConfig.ExposeService == "" && serviceConfig.ExposeServiceTLS != "" { - return kobject.KomposeObject{}, errors.New("kompose.service.expose.tls-secret was specifed without kompose.service.expose") + return kobject.KomposeObject{}, errors.New("kompose.service.expose.tls-secret was specified without kompose.service.expose") } // Log if the name will been changed