From b0901690fa53dede34e9cc029b1e7d763aa6ac4f Mon Sep 17 00:00:00 2001 From: Patrik Cyvoct Date: Tue, 7 Jul 2020 20:51:41 +0200 Subject: [PATCH] fix review Signed-off-by: Patrik Cyvoct --- provider/scaleway/scaleway.go | 36 ++++++++++++++++------------------- 1 file changed, 16 insertions(+), 20 deletions(-) diff --git a/provider/scaleway/scaleway.go b/provider/scaleway/scaleway.go index ab3102701..f4baf665b 100644 --- a/provider/scaleway/scaleway.go +++ b/provider/scaleway/scaleway.go @@ -19,7 +19,6 @@ package scaleway import ( "context" "fmt" - "os" "strconv" "strings" @@ -29,6 +28,8 @@ import ( "sigs.k8s.io/external-dns/endpoint" "sigs.k8s.io/external-dns/plan" "sigs.k8s.io/external-dns/provider" + + "sigs.k8s.io/external-dns/pkg/apis/externaldns" ) const ( @@ -54,29 +55,26 @@ type ScalewayChange struct { // NewScalewayProvider initializes a new Scaleway DNS provider func NewScalewayProvider(ctx context.Context, domainFilter endpoint.DomainFilter, dryRun bool) (*ScalewayProvider, error) { - accessKey, ok := os.LookupEnv(scw.ScwAccessKeyEnv) - if !ok { - return nil, fmt.Errorf("environment variable %s not found", scw.ScwAccessKeyEnv) - } - secretKey, ok := os.LookupEnv(scw.ScwSecretKeyEnv) - if !ok { - return nil, fmt.Errorf("environment variable %s not found", scw.ScwSecretKeyEnv) - } - organizationID, ok := os.LookupEnv(scw.ScwDefaultOrganizationIDEnv) - if !ok { - return nil, fmt.Errorf("environment variable %s not found", scw.ScwDefaultOrganizationIDEnv) - } - scwClient, err := scw.NewClient( scw.WithEnv(), - scw.WithAuth(accessKey, secretKey), - scw.WithDefaultOrganizationID(organizationID), - scw.WithUserAgent("ExternalDNS"), + scw.WithUserAgent("ExternalDNS/"+externaldns.Version), ) if err != nil { return nil, err } + if _, ok := scwClient.GetDefaultOrganizationID(); !ok { + return nil, fmt.Errorf("default organization is not set") + } + + if _, ok := scwClient.GetAccessKey(); !ok { + return nil, fmt.Errorf("access key no set") + } + + if _, ok := scwClient.GetSecretKey(); !ok { + return nil, fmt.Errorf("secret key no set") + } + domainAPI := domain.NewAPI(scwClient) return &ScalewayProvider{ @@ -122,9 +120,7 @@ func (p *ScalewayProvider) Records(ctx context.Context) ([]*endpoint.Endpoint, e for _, record := range recordsResp.Records { name := record.Name + "." - if record.Name == "" { - name = "" - } + // trim any leading or ending dot fullRecordName := strings.Trim(name+getCompleteZoneName(zone), ".")