{"action":"created","comment":{"url":"https://api.github.com/repos/openshift/origin/pulls/comments/63819915","id":63819915,"diff_hunk":"@@ -410,18 +411,31 @@ func (c *ClientStartConfig) EnsureVolumeShare(io.Writer) error {\n \n // CheckAvailablePorts ensures that ports used by OpenShift are available on the Docker host\n func (c *ClientStartConfig) CheckAvailablePorts(out io.Writer) error {\n-\terr := c.OpenShiftHelper().TestPorts()\n-\tif err != nil {\n-\t\treturn errors.NewError(\"A port needed by OpenShift is not available\").WithCause(err)\n+\terr := c.OpenShiftHelper().TestPorts(openshift.DefaultPorts)\n+\tif err == nil {\n+\t\tc.DNSPort = openshift.DefaultDNSPort\n+\t\treturn nil\n \t}\n-\treturn nil\n+\tif !openshift.IsPortsNotAvailableErr(err) {\n+\t\treturn err\n+\t}\n+\tconflicts := openshift.UnavailablePorts(err)\n+\tif len(conflicts) == 1 && conflicts[0] == openshift.DefaultDNSPort {\n+\t\terr = c.OpenShiftHelper().TestPorts(openshift.PortsWithAlternateDNS)\n+\t\tif err == nil {\n+\t\t\tc.DNSPort = openshift.AlternateDNSPort\n+\t\t\tfmt.Fprintf(out, \"WARNING: Using alternate port (%d) for DNS.\\nLookups may not work on node.\\n\", openshift.AlternateDNSPort)","path":"pkg/bootstrap/docker/up.go","position":38,"original_position":38,"commit_id":"47e064d721623eca8b13957a6e75a50da37a4f97","original_commit_id":"47e064d721623eca8b13957a6e75a50da37a4f97","user":{"login":"smarterclayton","id":1163175,"avatar_url":"https://avatars.githubusercontent.com/u/1163175?v=3","gravatar_id":"","url":"https://api.github.com/users/smarterclayton","html_url":"https://github.com/smarterclayton","followers_url":"https://api.github.com/users/smarterclayton/followers","following_url":"https://api.github.com/users/smarterclayton/following{/other_user}","gists_url":"https://api.github.com/users/smarterclayton/gists{/gist_id}","starred_url":"https://api.github.com/users/smarterclayton/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/smarterclayton/subscriptions","organizations_url":"https://api.github.com/users/smarterclayton/orgs","repos_url":"https://api.github.com/users/smarterclayton/repos","events_url":"https://api.github.com/users/smarterclayton/events{/privacy}","received_events_url":"https://api.github.com/users/smarterclayton/received_events","type":"User","site_admin":false},"body":"See what we print in master startup\n\nOn May 18, 2016, at 11:52 PM, Cesar Wong <notifications@github.com> wrote:\n\nIn pkg/bootstrap/docker/up.go\n<https://github.com/openshift/origin/pull/8935#discussion_r63819552>:\n\n>  \t}\n> -\treturn nil\n> +\tif !openshift.IsPortsNotAvailableErr(err) {\n> +\t\treturn err\n> +\t}\n> +\tconflicts := openshift.UnavailablePorts(err)\n> +\tif len(conflicts) == 1 && conflicts[0] == openshift.DefaultDNSPort {\n> +\t\terr = c.OpenShiftHelper().TestPorts(openshift.PortsWithAlternateDNS)\n> +\t\tif err == nil {\n> +\t\t\tc.DNSPort = openshift.AlternateDNSPort\n> +\t\t\tfmt.Fprintf(out, \"WARNING: Using alternate port (%d) for DNS.\\nLookups may not work on node.\\n\", openshift.AlternateDNSPort)\n\nNot sure the wording for this warning is right\n\n—\nYou are receiving this because you were mentioned.\nReply to this email directly or view it on GitHub\n<https://github.com/openshift/origin/pull/8935/files/47e064d721623eca8b13957a6e75a50da37a4f97#r63819552>\n","created_at":"2016-05-19T03:57:57Z","updated_at":"2016-05-19T03:57:57Z","html_url":"https://github.com/openshift/origin/pull/8935#discussion_r63819915","pull_request_url":"https://api.github.com/repos/openshift/origin/pulls/8935","_links":{"self":{"href":"https://api.github.com/repos/openshift/origin/pulls/comments/63819915"},"html":{"href":"https://github.com/openshift/origin/pull/8935#discussion_r63819915"},"pull_request":{"href":"https://api.github.com/repos/openshift/origin/pulls/8935"}}},"pull_request":{"url":"https://api.github.com/repos/openshift/origin/pulls/8935","id":70633304,"html_url":"https://github.com/openshift/origin/pull/8935","diff_url":"https://github.com/openshift/origin/pull/8935.diff","patch_url":"https://github.com/openshift/origin/pull/8935.patch","issue_url":"https://api.github.com/repos/openshift/origin/issues/8935","number":8935,"state":"open","locked":false,"title":"cluster up: use alternate port for DNS when 53 is not available","user":{"login":"csrwng","id":5834976,"avatar_url":"https://avatars.githubusercontent.com/u/5834976?v=3","gravatar_id":"","url":"https://api.github.com/users/csrwng","html_url":"https://github.com/csrwng","followers_url":"https://api.github.com/users/csrwng/followers","following_url":"https://api.github.com/users/csrwng/following{/other_user}","gists_url":"https://api.github.com/users/csrwng/gists{/gist_id}","starred_url":"https://api.github.com/users/csrwng/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/csrwng/subscriptions","organizations_url":"https://api.github.com/users/csrwng/orgs","repos_url":"https://api.github.com/users/csrwng/repos","events_url":"https://api.github.com/users/csrwng/events{/privacy}","received_events_url":"https://api.github.com/users/csrwng/received_events","type":"User","site_admin":false},"body":"If 53 is not available defaults to 8053 and prints a warning.","created_at":"2016-05-19T03:51:05Z","updated_at":"2016-05-19T03:57:57Z","closed_at":null,"merged_at":null,"merge_commit_sha":"0036abbedc56b2af159b8d6d153daf1ab0b807af","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/openshift/origin/pulls/8935/commits","review_comments_url":"https://api.github.com/repos/openshift/origin/pulls/8935/comments","review_comment_url":"https://api.github.com/repos/openshift/origin/pulls/comments{/number}","comments_url":"https://api.github.com/repos/openshift/origin/issues/8935/comments","statuses_url":"https://api.github.com/repos/openshift/origin/statuses/47e064d721623eca8b13957a6e75a50da37a4f97","head":{"label":"csrwng:cluster_up_dns","ref":"cluster_up_dns","sha":"47e064d721623eca8b13957a6e75a50da37a4f97","user":{"login":"csrwng","id":5834976,"avatar_url":"https://avatars.githubusercontent.com/u/5834976?v=3","gravatar_id":"","url":"https://api.github.com/users/csrwng","html_url":"https://github.com/csrwng","followers_url":"https://api.github.com/users/csrwng/followers","following_url":"https://api.github.com/users/csrwng/following{/other_user}","gists_url":"https://api.github.com/users/csrwng/gists{/gist_id}","starred_url":"https://api.github.com/users/csrwng/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/csrwng/subscriptions","organizations_url":"https://api.github.com/users/csrwng/orgs","repos_url":"https://api.github.com/users/csrwng/repos","events_url":"https://api.github.com/users/csrwng/events{/privacy}","received_events_url":"https://api.github.com/users/csrwng/received_events","type":"User","site_admin":false},"repo":{"id":23592505,"name":"origin","full_name":"csrwng/origin","owner":{"login":"csrwng","id":5834976,"avatar_url":"https://avatars.githubusercontent.com/u/5834976?v=3","gravatar_id":"","url":"https://api.github.com/users/csrwng","html_url":"https://github.com/csrwng","followers_url":"https://api.github.com/users/csrwng/followers","following_url":"https://api.github.com/users/csrwng/following{/other_user}","gists_url":"https://api.github.com/users/csrwng/gists{/gist_id}","starred_url":"https://api.github.com/users/csrwng/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/csrwng/subscriptions","organizations_url":"https://api.github.com/users/csrwng/orgs","repos_url":"https://api.github.com/users/csrwng/repos","events_url":"https://api.github.com/users/csrwng/events{/privacy}","received_events_url":"https://api.github.com/users/csrwng/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/csrwng/origin","description":"OpenShift 3 - build, deploy, and manage your applications with Docker and Kubernetes","fork":true,"url":"https://api.github.com/repos/csrwng/origin","forks_url":"https://api.github.com/repos/csrwng/origin/forks","keys_url":"https://api.github.com/repos/csrwng/origin/keys{/key_id}","collaborators_url":"https://api.github.com/repos/csrwng/origin/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/csrwng/origin/teams","hooks_url":"https://api.github.com/repos/csrwng/origin/hooks","issue_events_url":"https://api.github.com/repos/csrwng/origin/issues/events{/number}","events_url":"https://api.github.com/repos/csrwng/origin/events","assignees_url":"https://api.github.com/repos/csrwng/origin/assignees{/user}","branches_url":"https://api.github.com/repos/csrwng/origin/branches{/branch}","tags_url":"https://api.github.com/repos/csrwng/origin/tags","blobs_url":"https://api.github.com/repos/csrwng/origin/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/csrwng/origin/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/csrwng/origin/git/refs{/sha}","trees_url":"https://api.github.com/repos/csrwng/origin/git/trees{/sha}","statuses_url":"https://api.github.com/repos/csrwng/origin/statuses/{sha}","languages_url":"https://api.github.com/repos/csrwng/origin/languages","stargazers_url":"https://api.github.com/repos/csrwng/origin/stargazers","contributors_url":"https://api.github.com/repos/csrwng/origin/contributors","subscribers_url":"https://api.github.com/repos/csrwng/origin/subscribers","subscription_url":"https://api.github.com/repos/csrwng/origin/subscription","commits_url":"https://api.github.com/repos/csrwng/origin/commits{/sha}","git_commits_url":"https://api.github.com/repos/csrwng/origin/git/commits{/sha}","comments_url":"https://api.github.com/repos/csrwng/origin/comments{/number}","issue_comment_url":"https://api.github.com/repos/csrwng/origin/issues/comments{/number}","contents_url":"https://api.github.com/repos/csrwng/origin/contents/{+path}","compare_url":"https://api.github.com/repos/csrwng/origin/compare/{base}...{head}","merges_url":"https://api.github.com/repos/csrwng/origin/merges","archive_url":"https://api.github.com/repos/csrwng/origin/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/csrwng/origin/downloads","issues_url":"https://api.github.com/repos/csrwng/origin/issues{/number}","pulls_url":"https://api.github.com/repos/csrwng/origin/pulls{/number}","milestones_url":"https://api.github.com/repos/csrwng/origin/milestones{/number}","notifications_url":"https://api.github.com/repos/csrwng/origin/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/csrwng/origin/labels{/name}","releases_url":"https://api.github.com/repos/csrwng/origin/releases{/id}","deployments_url":"https://api.github.com/repos/csrwng/origin/deployments","created_at":"2014-09-02T19:29:25Z","updated_at":"2016-01-11T13:43:26Z","pushed_at":"2016-05-19T03:47:45Z","git_url":"git://github.com/csrwng/origin.git","ssh_url":"git@github.com:csrwng/origin.git","clone_url":"https://github.com/csrwng/origin.git","svn_url":"https://github.com/csrwng/origin","homepage":"https://openshift.github.io","size":263236,"stargazers_count":0,"watchers_count":0,"language":"Go","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"openshift:master","ref":"master","sha":"665eb4bccc2f377d3f50a5168e1f1f432171507d","user":{"login":"openshift","id":792337,"avatar_url":"https://avatars.githubusercontent.com/u/792337?v=3","gravatar_id":"","url":"https://api.github.com/users/openshift","html_url":"https://github.com/openshift","followers_url":"https://api.github.com/users/openshift/followers","following_url":"https://api.github.com/users/openshift/following{/other_user}","gists_url":"https://api.github.com/users/openshift/gists{/gist_id}","starred_url":"https://api.github.com/users/openshift/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/openshift/subscriptions","organizations_url":"https://api.github.com/users/openshift/orgs","repos_url":"https://api.github.com/users/openshift/repos","events_url":"https://api.github.com/users/openshift/events{/privacy}","received_events_url":"https://api.github.com/users/openshift/received_events","type":"Organization","site_admin":false},"repo":{"id":22442668,"name":"origin","full_name":"openshift/origin","owner":{"login":"openshift","id":792337,"avatar_url":"https://avatars.githubusercontent.com/u/792337?v=3","gravatar_id":"","url":"https://api.github.com/users/openshift","html_url":"https://github.com/openshift","followers_url":"https://api.github.com/users/openshift/followers","following_url":"https://api.github.com/users/openshift/following{/other_user}","gists_url":"https://api.github.com/users/openshift/gists{/gist_id}","starred_url":"https://api.github.com/users/openshift/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/openshift/subscriptions","organizations_url":"https://api.github.com/users/openshift/orgs","repos_url":"https://api.github.com/users/openshift/repos","events_url":"https://api.github.com/users/openshift/events{/privacy}","received_events_url":"https://api.github.com/users/openshift/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/openshift/origin","description":"OpenShift - Build, deploy, and manage cloud-native and legacy applications with Kubernetes and Docker","fork":false,"url":"https://api.github.com/repos/openshift/origin","forks_url":"https://api.github.com/repos/openshift/origin/forks","keys_url":"https://api.github.com/repos/openshift/origin/keys{/key_id}","collaborators_url":"https://api.github.com/repos/openshift/origin/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/openshift/origin/teams","hooks_url":"https://api.github.com/repos/openshift/origin/hooks","issue_events_url":"https://api.github.com/repos/openshift/origin/issues/events{/number}","events_url":"https://api.github.com/repos/openshift/origin/events","assignees_url":"https://api.github.com/repos/openshift/origin/assignees{/user}","branches_url":"https://api.github.com/repos/openshift/origin/branches{/branch}","tags_url":"https://api.github.com/repos/openshift/origin/tags","blobs_url":"https://api.github.com/repos/openshift/origin/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/openshift/origin/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/openshift/origin/git/refs{/sha}","trees_url":"https://api.github.com/repos/openshift/origin/git/trees{/sha}","statuses_url":"https://api.github.com/repos/openshift/origin/statuses/{sha}","languages_url":"https://api.github.com/repos/openshift/origin/languages","stargazers_url":"https://api.github.com/repos/openshift/origin/stargazers","contributors_url":"https://api.github.com/repos/openshift/origin/contributors","subscribers_url":"https://api.github.com/repos/openshift/origin/subscribers","subscription_url":"https://api.github.com/repos/openshift/origin/subscription","commits_url":"https://api.github.com/repos/openshift/origin/commits{/sha}","git_commits_url":"https://api.github.com/repos/openshift/origin/git/commits{/sha}","comments_url":"https://api.github.com/repos/openshift/origin/comments{/number}","issue_comment_url":"https://api.github.com/repos/openshift/origin/issues/comments{/number}","contents_url":"https://api.github.com/repos/openshift/origin/contents/{+path}","compare_url":"https://api.github.com/repos/openshift/origin/compare/{base}...{head}","merges_url":"https://api.github.com/repos/openshift/origin/merges","archive_url":"https://api.github.com/repos/openshift/origin/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/openshift/origin/downloads","issues_url":"https://api.github.com/repos/openshift/origin/issues{/number}","pulls_url":"https://api.github.com/repos/openshift/origin/pulls{/number}","milestones_url":"https://api.github.com/repos/openshift/origin/milestones{/number}","notifications_url":"https://api.github.com/repos/openshift/origin/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/openshift/origin/labels{/name}","releases_url":"https://api.github.com/repos/openshift/origin/releases{/id}","deployments_url":"https://api.github.com/repos/openshift/origin/deployments","created_at":"2014-07-30T20:04:05Z","updated_at":"2016-05-18T11:57:39Z","pushed_at":"2016-05-19T03:51:05Z","git_url":"git://github.com/openshift/origin.git","ssh_url":"git@github.com:openshift/origin.git","clone_url":"https://github.com/openshift/origin.git","svn_url":"https://github.com/openshift/origin","homepage":"http://www.openshift.org","size":505295,"stargazers_count":1303,"watchers_count":1303,"language":"Go","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":780,"mirror_url":null,"open_issues_count":1000,"forks":780,"open_issues":1000,"watchers":1303,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/openshift/origin/pulls/8935"},"html":{"href":"https://github.com/openshift/origin/pull/8935"},"issue":{"href":"https://api.github.com/repos/openshift/origin/issues/8935"},"comments":{"href":"https://api.github.com/repos/openshift/origin/issues/8935/comments"},"review_comments":{"href":"https://api.github.com/repos/openshift/origin/pulls/8935/comments"},"review_comment":{"href":"https://api.github.com/repos/openshift/origin/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/openshift/origin/pulls/8935/commits"},"statuses":{"href":"https://api.github.com/repos/openshift/origin/statuses/47e064d721623eca8b13957a6e75a50da37a4f97"}}}}