mirror of
https://github.com/coredns/coredns.git
synced 2025-12-16 07:15:15 -05:00
plugin/health: add lameduck mode (#1379)
* plugin/health: add lameduck mode Add a way to configure lameduck more, i.e. set health to false, stop polling plugins. Then wait for a duration before shutting down. As the health middleware is configured early on in the plugin list, it will hold up all other shutdown, meaning we still answer queries. * Add New * More tests * golint * remove confusing text
This commit is contained in:
@@ -13,17 +13,27 @@ func TestSetupHealth(t *testing.T) {
|
||||
}{
|
||||
{`health`, false},
|
||||
{`health localhost:1234`, false},
|
||||
{`health localhost:1234 {
|
||||
lameduck 4s
|
||||
}`, false},
|
||||
{`health bla:a`, false},
|
||||
|
||||
{`health bla`, true},
|
||||
{`health bla bla`, true},
|
||||
{`health localhost:1234 {
|
||||
lameduck a
|
||||
}`, true},
|
||||
{`health localhost:1234 {
|
||||
lamedudk 4
|
||||
} `, true},
|
||||
}
|
||||
|
||||
for i, test := range tests {
|
||||
c := caddy.NewTestController("dns", test.input)
|
||||
_, err := healthParse(c)
|
||||
_, _, err := healthParse(c)
|
||||
|
||||
if test.shouldErr && err == nil {
|
||||
t.Errorf("Test %d: Expected error but found %s for input %s", i, err, test.input)
|
||||
t.Errorf("Test %d: Expected error but found none for input %s", i, test.input)
|
||||
}
|
||||
|
||||
if err != nil {
|
||||
|
||||
Reference in New Issue
Block a user