libnetwork: make OptionDNS, OptionDNSOptions, OptionDNSSearch take a slice
Outside of some tests, these options are the only code setting these fields, so we can update them to set the value, instead of appending. Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
This commit is contained in:
parent
2cbed9d2a8
commit
91cab53a3e
2 changed files with 12 additions and 28 deletions
|
@ -32,8 +32,6 @@ func (daemon *Daemon) buildSandboxOptions(cfg *config.Config, container *contain
|
|||
var (
|
||||
sboxOptions []libnetwork.SandboxOption
|
||||
err error
|
||||
dns []string
|
||||
dnsOptions []string
|
||||
bindings = make(nat.PortMap)
|
||||
pbList []types.PortBinding
|
||||
exposeList []types.TransportPort
|
||||
|
@ -56,33 +54,19 @@ func (daemon *Daemon) buildSandboxOptions(cfg *config.Config, container *contain
|
|||
}
|
||||
|
||||
if len(container.HostConfig.DNS) > 0 {
|
||||
dns = container.HostConfig.DNS
|
||||
sboxOptions = append(sboxOptions, libnetwork.OptionDNS(container.HostConfig.DNS))
|
||||
} else if len(cfg.DNS) > 0 {
|
||||
dns = cfg.DNS
|
||||
sboxOptions = append(sboxOptions, libnetwork.OptionDNS(cfg.DNS))
|
||||
}
|
||||
|
||||
for _, d := range dns {
|
||||
sboxOptions = append(sboxOptions, libnetwork.OptionDNS(d))
|
||||
}
|
||||
|
||||
var dnsSearch []string
|
||||
if len(container.HostConfig.DNSSearch) > 0 {
|
||||
dnsSearch = container.HostConfig.DNSSearch
|
||||
sboxOptions = append(sboxOptions, libnetwork.OptionDNSSearch(container.HostConfig.DNSSearch))
|
||||
} else if len(cfg.DNSSearch) > 0 {
|
||||
dnsSearch = cfg.DNSSearch
|
||||
sboxOptions = append(sboxOptions, libnetwork.OptionDNSSearch(cfg.DNSSearch))
|
||||
}
|
||||
for _, ds := range dnsSearch {
|
||||
sboxOptions = append(sboxOptions, libnetwork.OptionDNSSearch(ds))
|
||||
}
|
||||
|
||||
if len(container.HostConfig.DNSOptions) > 0 {
|
||||
dnsOptions = container.HostConfig.DNSOptions
|
||||
sboxOptions = append(sboxOptions, libnetwork.OptionDNSOptions(container.HostConfig.DNSOptions))
|
||||
} else if len(cfg.DNSOptions) > 0 {
|
||||
dnsOptions = cfg.DNSOptions
|
||||
}
|
||||
|
||||
for _, ds := range dnsOptions {
|
||||
sboxOptions = append(sboxOptions, libnetwork.OptionDNSOptions(ds))
|
||||
sboxOptions = append(sboxOptions, libnetwork.OptionDNSOptions(cfg.DNSOptions))
|
||||
}
|
||||
|
||||
if container.NetworkSettings.SecondaryIPAddresses != nil {
|
||||
|
|
|
@ -1068,25 +1068,25 @@ func OptionOriginResolvConfPath(path string) SandboxOption {
|
|||
|
||||
// OptionDNS function returns an option setter for dns entry option to
|
||||
// be passed to container Create method.
|
||||
func OptionDNS(dns string) SandboxOption {
|
||||
func OptionDNS(dns []string) SandboxOption {
|
||||
return func(sb *Sandbox) {
|
||||
sb.config.dnsList = append(sb.config.dnsList, dns)
|
||||
sb.config.dnsList = dns
|
||||
}
|
||||
}
|
||||
|
||||
// OptionDNSSearch function returns an option setter for dns search entry option to
|
||||
// be passed to container Create method.
|
||||
func OptionDNSSearch(search string) SandboxOption {
|
||||
func OptionDNSSearch(search []string) SandboxOption {
|
||||
return func(sb *Sandbox) {
|
||||
sb.config.dnsSearchList = append(sb.config.dnsSearchList, search)
|
||||
sb.config.dnsSearchList = search
|
||||
}
|
||||
}
|
||||
|
||||
// OptionDNSOptions function returns an option setter for dns options entry option to
|
||||
// be passed to container Create method.
|
||||
func OptionDNSOptions(options string) SandboxOption {
|
||||
func OptionDNSOptions(options []string) SandboxOption {
|
||||
return func(sb *Sandbox) {
|
||||
sb.config.dnsOptionsList = append(sb.config.dnsOptionsList, options)
|
||||
sb.config.dnsOptionsList = options
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue