diff options
-rw-r--r-- | plugin/deprecated/setup.go | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/plugin/deprecated/setup.go b/plugin/deprecated/setup.go new file mode 100644 index 000000000..cf415c1ae --- /dev/null +++ b/plugin/deprecated/setup.go @@ -0,0 +1,38 @@ +// Package deprecated is used when we deprecated plugin. In plugin.cfg just go from +// +// startup:github.com/mholt/caddy/startupshutdown +// +// To: +// +// startup:deprecated +// +// And things should work as expected. This means starting CoreDNS will fail with an error. We can only +// point to the release notes to details what next steps a user should take. I.e. there is no way to add this +// to the error generated. +package deprecated + +import ( + "errors" + + "github.com/coredns/coredns/plugin" + + "github.com/mholt/caddy" +) + +// removed has the names of the plugins that need to error on startup. +var removed = []string{"startup", "shutdown"} + +func setup(c *caddy.Controller) error { + c.Next() + x := c.Val() + return plugin.Error(x, errors.New("this plugin has been deprecated")) +} + +func init() { + for _, plugin := range removed { + caddy.RegisterPlugin(plugin, caddy.Plugin{ + ServerType: "dns", + Action: setup, + }) + } +} |