aboutsummaryrefslogtreecommitdiff
path: root/core/setup/proxy.go
blob: 6753d07adfd891d5616109565f780ba4319d82c7 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
package setup

import (
	"github.com/miekg/coredns/middleware"
	"github.com/miekg/coredns/middleware/proxy"
)

// Proxy configures a new Proxy middleware instance.
func Proxy(c *Controller) (middleware.Middleware, error) {
	upstreams, err := proxy.NewStaticUpstreams(c.Dispenser)
	if err != nil {
		return nil, err
	}
	return func(next middleware.Handler) middleware.Handler {
		return proxy.Proxy{Next: next, Client: proxy.Clients(), Upstreams: upstreams}
	}, nil
}