aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Miek Gieben <miek@miek.nl> 2019-10-03 07:21:11 +0100
committerGravatar GitHub <noreply@github.com> 2019-10-03 07:21:11 +0100
commitaa96d6b443ea58c8f7c80649f76b93e243fbb3f4 (patch)
tree649aa0de868d06a3294503bbdc14665f3e28c863
parent8fde7407d94feec02027de69d1ffa278ae0221ad (diff)
downloadcoredns-aa96d6b443ea58c8f7c80649f76b93e243fbb3f4.tar.gz
coredns-aa96d6b443ea58c8f7c80649f76b93e243fbb3f4.tar.zst
coredns-aa96d6b443ea58c8f7c80649f76b93e243fbb3f4.zip
plugin/route53: remove amazon intialization from init (#3348)
Don't perform this code in the init, this allocated 1 megabyte of memory even if you don't use the plugin. Looks to be only there for testing, adding a comment to reflect that. Fixes #3342 Signed-off-by: Miek Gieben <miek@miek.nl>
-rw-r--r--plugin/route53/setup.go18
-rw-r--r--plugin/route53/setup_test.go4
2 files changed, 8 insertions, 14 deletions
diff --git a/plugin/route53/setup.go b/plugin/route53/setup.go
index 3b47fad59..c285bee2d 100644
--- a/plugin/route53/setup.go
+++ b/plugin/route53/setup.go
@@ -24,20 +24,14 @@ import (
var log = clog.NewWithPlugin("route53")
-func init() {
- plugin.Register("route53",
- func(c *caddy.Controller) error {
- f := func(credential *credentials.Credentials) route53iface.Route53API {
- return route53.New(session.Must(session.NewSession(&aws.Config{
- Credentials: credential,
- })))
- }
- return setup(c, f)
- },
- )
+func init() { plugin.Register("route53", setup) }
+
+// exposed for testing
+var f = func(credential *credentials.Credentials) route53iface.Route53API {
+ return route53.New(session.Must(session.NewSession(&aws.Config{Credentials: credential})))
}
-func setup(c *caddy.Controller, f func(*credentials.Credentials) route53iface.Route53API) error {
+func setup(c *caddy.Controller) error {
for c.Next() {
keyPairs := map[string]struct{}{}
keys := map[string][]string{}
diff --git a/plugin/route53/setup_test.go b/plugin/route53/setup_test.go
index 998285e46..cb73d8fef 100644
--- a/plugin/route53/setup_test.go
+++ b/plugin/route53/setup_test.go
@@ -9,7 +9,7 @@ import (
)
func TestSetupRoute53(t *testing.T) {
- f := func(credential *credentials.Credentials) route53iface.Route53API {
+ f = func(credential *credentials.Credentials) route53iface.Route53API {
return fakeRoute53{}
}
@@ -73,7 +73,7 @@ func TestSetupRoute53(t *testing.T) {
for _, test := range tests {
c := caddy.NewTestController("dns", test.body)
- if err := setup(c, f); (err == nil) == test.expectedError {
+ if err := setup(c); (err == nil) == test.expectedError {
t.Errorf("Unexpected errors: %v", err)
}
}