All middleware equal (#535)
* all-middleware-equal
* Revert "all-middleware-equal"
This reverts commit ee77b2a981
.
* middleware: treat external and local the same
Make the middleware generation simpler and also specify the local
middleware, meaning that it can now be removed as well. Simplify
the code a bit and regen everything.
* remove lineNR, not used
This commit is contained in:
parent
bcd9c8b0fb
commit
ea38b642b8
4 changed files with 66 additions and 44 deletions
|
@ -30,7 +30,6 @@ var directives = []string{
|
|||
"kubernetes",
|
||||
"reverse",
|
||||
"proxy",
|
||||
"httpprox",
|
||||
"whoami",
|
||||
"erratic",
|
||||
}
|
||||
|
|
|
@ -1,4 +1,27 @@
|
|||
// generated by directives_generate.go; DO NOT EDIT
|
||||
package core
|
||||
|
||||
import ()
|
||||
import (
|
||||
_ "github.com/miekg/coredns/middleware/auto"
|
||||
_ "github.com/miekg/coredns/middleware/bind"
|
||||
_ "github.com/miekg/coredns/middleware/cache"
|
||||
_ "github.com/miekg/coredns/middleware/chaos"
|
||||
_ "github.com/miekg/coredns/middleware/dnssec"
|
||||
_ "github.com/miekg/coredns/middleware/erratic"
|
||||
_ "github.com/miekg/coredns/middleware/errors"
|
||||
_ "github.com/miekg/coredns/middleware/etcd"
|
||||
_ "github.com/miekg/coredns/middleware/file"
|
||||
_ "github.com/miekg/coredns/middleware/health"
|
||||
_ "github.com/miekg/coredns/middleware/kubernetes"
|
||||
_ "github.com/miekg/coredns/middleware/loadbalance"
|
||||
_ "github.com/miekg/coredns/middleware/log"
|
||||
_ "github.com/miekg/coredns/middleware/metrics"
|
||||
_ "github.com/miekg/coredns/middleware/pprof"
|
||||
_ "github.com/miekg/coredns/middleware/proxy"
|
||||
_ "github.com/miekg/coredns/middleware/reverse"
|
||||
_ "github.com/miekg/coredns/middleware/rewrite"
|
||||
_ "github.com/miekg/coredns/middleware/root"
|
||||
_ "github.com/miekg/coredns/middleware/secondary"
|
||||
_ "github.com/miekg/coredns/middleware/trace"
|
||||
_ "github.com/miekg/coredns/middleware/whoami"
|
||||
)
|
||||
|
|
|
@ -25,22 +25,23 @@ func main() {
|
|||
scanner := bufio.NewScanner(file)
|
||||
for scanner.Scan() {
|
||||
line := scanner.Text()
|
||||
if !strings.HasPrefix(line, `//`) && !strings.HasPrefix(line, "#") {
|
||||
items := strings.Split(line, ":")
|
||||
if len(items) == 3 {
|
||||
if priority, err := strconv.Atoi(items[0]); err == nil {
|
||||
md[priority] = items[1]
|
||||
}
|
||||
if strings.HasPrefix(line, "#") {
|
||||
continue
|
||||
}
|
||||
|
||||
if items[2] != "" {
|
||||
if strings.Contains(items[2], "/") {
|
||||
mi[items[1]] = items[2]
|
||||
} else {
|
||||
mi[items[1]] = middlewarePath + items[2]
|
||||
}
|
||||
}
|
||||
items := strings.Split(line, ":")
|
||||
if len(items) != 3 {
|
||||
// ignore
|
||||
continue
|
||||
}
|
||||
priority, err := strconv.Atoi(items[0])
|
||||
fatalIfErr(err)
|
||||
|
||||
}
|
||||
md[priority] = items[1]
|
||||
mi[items[1]] = middlewarePath + items[2] // Default, unless overriden by 3rd arg
|
||||
|
||||
if strings.Contains(items[2], "/") { // External package has been given
|
||||
mi[items[1]] = items[2]
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -6,39 +6,38 @@
|
|||
# (after) them during a request, but they must not
|
||||
# care what middleware above them are doing.
|
||||
|
||||
|
||||
# How to rebuild with updated middleware configurations:
|
||||
# Modify the list below and run `make gen && make`
|
||||
# Modify the list below and run `go gen && go build`
|
||||
|
||||
# The parser takes the input format of
|
||||
# <order>:<middleware-name>:<package-name>
|
||||
# OR
|
||||
# <order>:<middleware-name>:
|
||||
# Or
|
||||
# <order>:<middleware-name>:<fully-qualified-package-name>
|
||||
#
|
||||
# External middleware example:
|
||||
# 80:log:github.com/miekg/coredns/middleware/log
|
||||
# Local middleware example:
|
||||
# 80:log:
|
||||
# 80:log:log
|
||||
|
||||
10:root:
|
||||
20:bind:
|
||||
30:trace:
|
||||
40:health:
|
||||
50:pprof:
|
||||
60:prometheus:
|
||||
70:errors:
|
||||
80:log:
|
||||
90:chaos:
|
||||
100:cache:
|
||||
110:rewrite:
|
||||
120:loadbalance:
|
||||
130:dnssec:
|
||||
140:file:
|
||||
150:auto:
|
||||
160:secondary:
|
||||
170:etcd:
|
||||
180:kubernetes:
|
||||
185:reverse:
|
||||
190:proxy:
|
||||
200:httpprox:
|
||||
210:whoami:
|
||||
220:erratic:
|
||||
10:root:root
|
||||
20:bind:bind
|
||||
30:trace:trace
|
||||
40:health:health
|
||||
50:pprof:pprof
|
||||
60:prometheus:metrics
|
||||
70:errors:errors
|
||||
80:log:log
|
||||
90:chaos:chaos
|
||||
100:cache:cache
|
||||
110:rewrite:rewrite
|
||||
120:loadbalance:loadbalance
|
||||
130:dnssec:dnssec
|
||||
140:file:file
|
||||
150:auto:auto
|
||||
160:secondary:secondary
|
||||
170:etcd:etcd
|
||||
180:kubernetes:kubernetes
|
||||
185:reverse:reverse
|
||||
190:proxy:proxy
|
||||
210:whoami:whoami
|
||||
220:erratic:erratic
|
||||
|
|
Loading…
Add table
Reference in a new issue