6751a49d14
Signed-off-by: Doug Davis <dug@us.ibm.com>
42 lines
1.2 KiB
Go
42 lines
1.2 KiB
Go
// +build !windows
|
|
|
|
package main
|
|
|
|
import (
|
|
"io/ioutil"
|
|
"os"
|
|
"strings"
|
|
|
|
"github.com/go-check/check"
|
|
)
|
|
|
|
func (s *DockerSuite) TestLinksEtcHostsRegularFile(c *check.C) {
|
|
out, _ := dockerCmd(c, "run", "--net=host", "busybox", "ls", "-la", "/etc/hosts")
|
|
if !strings.HasPrefix(out, "-") {
|
|
c.Errorf("/etc/hosts should be a regular file")
|
|
}
|
|
}
|
|
|
|
func (s *DockerSuite) TestLinksEtcHostsContentMatch(c *check.C) {
|
|
testRequires(c, SameHostDaemon)
|
|
|
|
out, _ := dockerCmd(c, "run", "--net=host", "busybox", "cat", "/etc/hosts")
|
|
hosts, err := ioutil.ReadFile("/etc/hosts")
|
|
if os.IsNotExist(err) {
|
|
c.Skip("/etc/hosts does not exist, skip this test")
|
|
}
|
|
|
|
if out != string(hosts) {
|
|
c.Errorf("container: %s\n\nhost:%s", out, hosts)
|
|
}
|
|
|
|
}
|
|
|
|
func (s *DockerSuite) TestLinksNetworkHostContainer(c *check.C) {
|
|
dockerCmd(c, "run", "-d", "--net", "host", "--name", "host_container", "busybox", "top")
|
|
out, _, err := dockerCmdWithError(c, "run", "--name", "should_fail", "--link", "host_container:tester", "busybox", "true")
|
|
if err == nil || !strings.Contains(out, "--net=host can't be used with links. This would result in undefined behavior") {
|
|
c.Fatalf("Running container linking to a container with --net host should have failed: %s", out)
|
|
}
|
|
|
|
}
|