diff --git a/hack/test-end-to-end.sh b/hack/test-end-to-end.sh index cfd25db795af..7b394998d342 100755 --- a/hack/test-end-to-end.sh +++ b/hack/test-end-to-end.sh @@ -235,6 +235,8 @@ DOCKER_REGISTRY=$(osc get --output-version=v1beta1 --template="{{ .portalIP }}:{ echo "[INFO] Verifying the docker-registry is up at ${DOCKER_REGISTRY}" wait_for_url_timed "http://${DOCKER_REGISTRY}" "[INFO] Docker registry says: " $((2*TIME_MIN)) +[ "$(dig @${API_HOST} "docker-registry.default.local." A)" ] + docker tag -f centos:centos7 ${DOCKER_REGISTRY}/cached/centos:centos7 docker push ${DOCKER_REGISTRY}/cached/centos:centos7 echo "[INFO] Pushed centos7" diff --git a/pkg/cmd/server/config.go b/pkg/cmd/server/config.go index d11a097af699..1cb1c7c9c3a9 100644 --- a/pkg/cmd/server/config.go +++ b/pkg/cmd/server/config.go @@ -20,7 +20,6 @@ import ( "github.com/openshift/origin/pkg/api/latest" "github.com/openshift/origin/pkg/cmd/flagtypes" "github.com/openshift/origin/pkg/cmd/util" - cmdutil "github.com/openshift/origin/pkg/cmd/util" "github.com/openshift/origin/pkg/cmd/util/docker" "github.com/openshift/origin/pkg/cmd/util/variable" ) @@ -103,14 +102,7 @@ func NewDefaultConfig() *Config { } // TODO: allow DNS binding to be disabled. - dnsAddr := flagtypes.Addr{Value: config.BindAddr.Host, DefaultPort: 53}.Default() - if !cmdutil.TryListen(dnsAddr.URL.Host) { - original := dnsAddr.URL.Host - dnsAddr.DefaultPort = 8053 - dnsAddr = dnsAddr.Default() - glog.Warningf("Unable to bind DNS as %s (you may need to run as root), using %s which will not resolve from all locations", original, dnsAddr.URL.Host) - } - config.DNSBindAddr = dnsAddr + config.DNSBindAddr = flagtypes.Addr{Value: config.BindAddr.Host, DefaultPort: 53}.Default() config.ClientConfig = clientcmd.NewNonInteractiveDeferredLoadingClientConfig(&config.ClientConfigLoadingRules, &clientcmd.ConfigOverrides{}) diff --git a/pkg/cmd/server/origin/master.go b/pkg/cmd/server/origin/master.go index d102dd93d03a..05cfef18cafa 100644 --- a/pkg/cmd/server/origin/master.go +++ b/pkg/cmd/server/origin/master.go @@ -3,6 +3,7 @@ package origin import ( "crypto/tls" "fmt" + "net" "net/http" "net/url" "os" @@ -577,6 +578,13 @@ func (c *MasterConfig) RunDNSServer() { if err != nil { glog.Fatalf("Could not start DNS: %v", err) } + + if _, port, err := net.SplitHostPort(c.DNSBindAddr); err == nil { + if len(port) != 0 && port != "53" { + glog.Warningf("Unable to bind DNS on port 53 (you may need to run as root), using %s which will not resolve from all locations", c.DNSBindAddr) + } + } + config.DnsAddr = c.DNSBindAddr go func() { err := dns.ListenAndServe(config, c.DNSServerClient(), c.EtcdHelper.Client.(*etcdclient.Client)) diff --git a/pkg/cmd/server/origin_master.go b/pkg/cmd/server/origin_master.go index 9714e6897d6b..31b02e4ac186 100644 --- a/pkg/cmd/server/origin_master.go +++ b/pkg/cmd/server/origin_master.go @@ -17,6 +17,7 @@ import ( osclient "github.com/openshift/origin/pkg/client" "github.com/openshift/origin/pkg/cmd/server/crypto" "github.com/openshift/origin/pkg/cmd/server/origin" + cmdutil "github.com/openshift/origin/pkg/cmd/util" ) func (cfg Config) BuildOriginMasterConfig() (*origin.MasterConfig, error) { @@ -83,10 +84,16 @@ func (cfg Config) BuildOriginMasterConfig() (*origin.MasterConfig, error) { return nil, err } + dnsAddr := cfg.DNSBindAddr + if !cmdutil.TryListen(dnsAddr.URL.Host) { + dnsAddr.DefaultPort = 8053 + dnsAddr = dnsAddr.Default() + } + openshiftConfigParameters := origin.MasterConfigParameters{ MasterBindAddr: cfg.BindAddr.URL.Host, AssetBindAddr: cfg.GetAssetBindAddress(), - DNSBindAddr: cfg.DNSBindAddr.URL.Host, + DNSBindAddr: dnsAddr.URL.Host, MasterAddr: masterAddr.String(), KubernetesAddr: kubeAddr.String(), MasterPublicAddr: masterPublicAddr.String(),