From 2a6ed9a69815a2031881f4f0c11dfb5a750a4369 Mon Sep 17 00:00:00 2001 From: ampsingram Date: Wed, 16 Jan 2019 18:18:16 -0500 Subject: [PATCH] Improvement suggested by PR comment Fail early makes the code more readable --- pkg/cloudprovider/providers/aws/aws.go | 50 +++++++++++++------------- 1 file changed, 25 insertions(+), 25 deletions(-) diff --git a/pkg/cloudprovider/providers/aws/aws.go b/pkg/cloudprovider/providers/aws/aws.go index 9cde24c4631..86fcf0edd1c 100644 --- a/pkg/cloudprovider/providers/aws/aws.go +++ b/pkg/cloudprovider/providers/aws/aws.go @@ -609,32 +609,32 @@ func makeRegionEndpointSignature(serviceName, region string) string { } func parseOverrides(cfg *CloudConfig) error { - if len(cfg.Global.ServiceOverrides) > 0 { - if err := setOverridesDefaults(cfg); err != nil { - return err - } - overrides = make(map[string]CustomEndpoint) - for _, ovrd := range cfg.Global.ServiceOverrides { - tokens := strings.Split(ovrd, cfg.Global.OverrideSeparator) - if len(tokens) != 4 { - if len(tokens) > 0 { - return fmt.Errorf("4 parameters (service, region, url, signing region) are required for [%s] in %s", - tokens[0], ovrd) - } - return fmt.Errorf("4 parameters (service, region, url, signing region) are required in %s", - ovrd) - } - name := strings.TrimSpace(tokens[0]) - region := strings.TrimSpace(tokens[1]) - url := strings.TrimSpace(tokens[2]) - signingRegion := strings.TrimSpace(tokens[3]) - signature := makeRegionEndpointSignature(name, region) - overrides[signature] = CustomEndpoint{Endpoint: url, SigningRegion: signingRegion} - } - overridesActive = true - } else { - overridesActive = false + overridesActive = false + if len(cfg.Global.ServiceOverrides) == 0 { + return nil } + if err := setOverridesDefaults(cfg); err != nil { + return err + } + overrides = make(map[string]CustomEndpoint) + for _, ovrd := range cfg.Global.ServiceOverrides { + tokens := strings.Split(ovrd, cfg.Global.OverrideSeparator) + if len(tokens) != 4 { + if len(tokens) > 0 { + return fmt.Errorf("4 parameters (service, region, url, signing region) are required for [%s] in %s", + tokens[0], ovrd) + } + return fmt.Errorf("4 parameters (service, region, url, signing region) are required in %s", + ovrd) + } + name := strings.TrimSpace(tokens[0]) + region := strings.TrimSpace(tokens[1]) + url := strings.TrimSpace(tokens[2]) + signingRegion := strings.TrimSpace(tokens[3]) + signature := makeRegionEndpointSignature(name, region) + overrides[signature] = CustomEndpoint{Endpoint: url, SigningRegion: signingRegion} + } + overridesActive = true return nil }