We have a bug report complaining about docker dumping the contents of the hosts resolv.conf if it container 127.0.0.1. They asked that instead of dropping the file altogether, that we just remove the line. This patch removes the 127.0.0.1 lines, if they exist and then checks if any nameserver lines exist. Docker-DCO-1.1-Signed-off-by: Dan Walsh <dwalsh@redhat.com> (github: rhatdan) Upstream-commit: 65640994fda8e1667de3642d8f4daf76dd3de302 Component: engine
61 lines
1.7 KiB
Go
61 lines
1.7 KiB
Go
package daemon
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/docker/docker/runconfig"
|
|
"github.com/docker/docker/utils"
|
|
)
|
|
|
|
func TestMergeLxcConfig(t *testing.T) {
|
|
var (
|
|
hostConfig = &runconfig.HostConfig{
|
|
LxcConf: []utils.KeyValuePair{
|
|
{Key: "lxc.cgroups.cpuset", Value: "1,2"},
|
|
},
|
|
}
|
|
driverConfig = make(map[string][]string)
|
|
)
|
|
|
|
mergeLxcConfIntoOptions(hostConfig, driverConfig)
|
|
if l := len(driverConfig["lxc"]); l > 1 {
|
|
t.Fatalf("expected lxc options len of 1 got %d", l)
|
|
}
|
|
|
|
cpuset := driverConfig["lxc"][0]
|
|
if expected := "cgroups.cpuset=1,2"; cpuset != expected {
|
|
t.Fatalf("expected %s got %s", expected, cpuset)
|
|
}
|
|
}
|
|
|
|
func TestRemoveLocalDns(t *testing.T) {
|
|
ns0 := "nameserver 10.16.60.14\nnameserver 10.16.60.21\n"
|
|
|
|
if result := utils.RemoveLocalDns([]byte(ns0)); result != nil {
|
|
if ns0 != string(result) {
|
|
t.Fatalf("Failed No Localhost: expected \n<%s> got \n<%s>", ns0, string(result))
|
|
}
|
|
}
|
|
|
|
ns1 := "nameserver 10.16.60.14\nnameserver 10.16.60.21\nnameserver 127.0.0.1\n"
|
|
if result := utils.RemoveLocalDns([]byte(ns1)); result != nil {
|
|
if ns0 != string(result) {
|
|
t.Fatalf("Failed Localhost: expected \n<%s> got \n<%s>", ns0, string(result))
|
|
}
|
|
}
|
|
|
|
ns1 = "nameserver 10.16.60.14\nnameserver 127.0.0.1\nnameserver 10.16.60.21\n"
|
|
if result := utils.RemoveLocalDns([]byte(ns1)); result != nil {
|
|
if ns0 != string(result) {
|
|
t.Fatalf("Failed Localhost: expected \n<%s> got \n<%s>", ns0, string(result))
|
|
}
|
|
}
|
|
|
|
ns1 = "nameserver 127.0.1.1\nnameserver 10.16.60.14\nnameserver 10.16.60.21\n"
|
|
if result := utils.RemoveLocalDns([]byte(ns1)); result != nil {
|
|
if ns0 != string(result) {
|
|
t.Fatalf("Failed Localhost: expected \n<%s> got \n<%s>", ns0, string(result))
|
|
}
|
|
}
|
|
}
|