diff options
Diffstat (limited to 'plugin/clouddns/setup.go')
-rw-r--r-- | plugin/clouddns/setup.go | 34 |
1 files changed, 15 insertions, 19 deletions
diff --git a/plugin/clouddns/setup.go b/plugin/clouddns/setup.go index 35c7e9179..7de8efe89 100644 --- a/plugin/clouddns/setup.go +++ b/plugin/clouddns/setup.go @@ -17,27 +17,23 @@ import ( var log = clog.NewWithPlugin("clouddns") -func init() { - plugin.Register("clouddns", - func(c *caddy.Controller) error { - f := func(ctx context.Context, opt option.ClientOption) (gcpDNS, error) { - var err error - var client *gcp.Service - if opt != nil { - client, err = gcp.NewService(ctx, opt) - } else { - // if credentials file is not provided in the Corefile - // authenticate the client using env variables - client, err = gcp.NewService(ctx) - } - return gcpClient{client}, err - } - return setup(c, f) - }, - ) +func init() { plugin.Register("clouddns", setup) } + +// exposed for testing +var f = func(ctx context.Context, opt option.ClientOption) (gcpDNS, error) { + var err error + var client *gcp.Service + if opt != nil { + client, err = gcp.NewService(ctx, opt) + } else { + // if credentials file is not provided in the Corefile + // authenticate the client using env variables + client, err = gcp.NewService(ctx) + } + return gcpClient{client}, err } -func setup(c *caddy.Controller, f func(ctx context.Context, opt option.ClientOption) (gcpDNS, error)) error { +func setup(c *caddy.Controller) error { for c.Next() { keyPairs := map[string]struct{}{} keys := map[string][]string{} |