{"action":"created","comment":{"url":"https://api.github.com/repos/google/kf/pulls/comments/325872081","pull_request_review_id":290172794,"id":325872081,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDMyNTg3MjA4MQ==","diff_hunk":"@@ -84,26 +81,18 @@ func NewProxyCommand(p *config.KfParams, appsClient apps.Client, ingressLister i\n \t\t\t}\n \n \t\t\tappHost := url.Host\n-\n \t\t\tw := cmd.OutOrStdout()\n-\t\t\tfmt.Fprintf(w, \"Forwarding requests from %s to %s with host %s\\n\", listener.Addr(), gateway, appHost)\n-\t\t\tfmt.Fprintln(w, \"Example GET:\")\n-\t\t\tfmt.Fprintf(w, \"  curl -H \\\"Host: %s\\\" http://%s\\n\", appHost, gateway)\n-\t\t\tfmt.Fprintln(w, \"Example POST:\")\n-\t\t\tfmt.Fprintf(w, \"  curl --request POST -H \\\"Host: %s\\\" http://%s --data \\\"POST data\\\"\\n\", appHost, gateway)\n-\t\t\tfmt.Fprintln(w, \"Browser link:\")\n-\t\t\tfmt.Fprintf(w, \"  http://%s\\n\", listener.Addr())\n-\n-\t\t\tfmt.Fprintln(w)\n-\n-\t\t\tfmt.Fprintln(w, \"\\033[33mNOTE: the first request may take some time if the app is scaled to zero\\033[0m\")\n \n \t\t\tif noStart {\n-\t\t\t\tfmt.Fprintln(cmd.OutOrStdout(), \"exiting because no-start flag was provided\")\n+\t\t\t\tfmt.Fprintln(w, \"exiting because no-start flag was provided\")\n+\t\t\t\tutils.PrintCurlExamples(w, listener, appHost, gateway, false)\n \t\t\t\treturn nil\n \t\t\t}\n \n-\t\t\treturn http.Serve(listener, createProxy(cmd.OutOrStdout(), app.Status.URL.Host, gateway))\n+\t\t\tutils.PrintCurlExamples(w, listener, appHost, gateway, true)\n+\t\t\tfmt.Fprintln(w, \"\\033[33mNOTE: the first request may take some time if the app is scaled to zero\\033[0m\")","path":"pkg/kf/commands/apps/proxy.go","position":39,"original_position":39,"commit_id":"80ffa72fc0850e847aa8ced2c480197fc33b4558","original_commit_id":"80ffa72fc0850e847aa8ced2c480197fc33b4558","user":{"login":"poy","id":6554782,"node_id":"MDQ6VXNlcjY1NTQ3ODI=","avatar_url":"https://avatars2.githubusercontent.com/u/6554782?v=4","gravatar_id":"","url":"https://api.github.com/users/poy","html_url":"https://github.com/poy","followers_url":"https://api.github.com/users/poy/followers","following_url":"https://api.github.com/users/poy/following{/other_user}","gists_url":"https://api.github.com/users/poy/gists{/gist_id}","starred_url":"https://api.github.com/users/poy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/poy/subscriptions","organizations_url":"https://api.github.com/users/poy/orgs","repos_url":"https://api.github.com/users/poy/repos","events_url":"https://api.github.com/users/poy/events{/privacy}","received_events_url":"https://api.github.com/users/poy/received_events","type":"User","site_admin":false},"body":"Can we stop propagating the color codes and instead use https://github.com/fatih/color?","created_at":"2019-09-18T20:15:59Z","updated_at":"2019-09-18T20:43:26Z","html_url":"https://github.com/google/kf/pull/684#discussion_r325872081","pull_request_url":"https://api.github.com/repos/google/kf/pulls/684","author_association":"COLLABORATOR","_links":{"self":{"href":"https://api.github.com/repos/google/kf/pulls/comments/325872081"},"html":{"href":"https://github.com/google/kf/pull/684#discussion_r325872081"},"pull_request":{"href":"https://api.github.com/repos/google/kf/pulls/684"}}},"pull_request":{"url":"https://api.github.com/repos/google/kf/pulls/684","id":316258118,"node_id":"MDExOlB1bGxSZXF1ZXN0MzE2MjU4MTE4","html_url":"https://github.com/google/kf/pull/684","diff_url":"https://github.com/google/kf/pull/684.diff","patch_url":"https://github.com/google/kf/pull/684.patch","issue_url":"https://api.github.com/repos/google/kf/issues/684","number":684,"state":"open","locked":false,"title":"Update virtual service route destination and add kf proxy-route cmd","user":{"login":"juliaguo","id":6687054,"node_id":"MDQ6VXNlcjY2ODcwNTQ=","avatar_url":"https://avatars1.githubusercontent.com/u/6687054?v=4","gravatar_id":"","url":"https://api.github.com/users/juliaguo","html_url":"https://github.com/juliaguo","followers_url":"https://api.github.com/users/juliaguo/followers","following_url":"https://api.github.com/users/juliaguo/following{/other_user}","gists_url":"https://api.github.com/users/juliaguo/gists{/gist_id}","starred_url":"https://api.github.com/users/juliaguo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/juliaguo/subscriptions","organizations_url":"https://api.github.com/users/juliaguo/orgs","repos_url":"https://api.github.com/users/juliaguo/repos","events_url":"https://api.github.com/users/juliaguo/events{/privacy}","received_events_url":"https://api.github.com/users/juliaguo/received_events","type":"User","site_admin":false},"body":"## Proposed Changes\r\n\r\n* Remove rewriting the HTTP authority to the service hostname (e.g. `my-app.my-namespace.svc.cluster.local`)\r\n* Set the service hostname as the route destination directly, rather than redirecting it back to the istio ingress gateway\r\n* Add `kf proxy-route` command and integration test\r\n\r\n## Release Notes\r\n\r\n<!-- kf follows the Keep A Changelog standard for release notes.\r\n\r\nhttps://keepachangelog.com/en/1.0.0/\r\n\r\nChangelog entries should be one per line and start with one of the following\r\nwords:\r\n\r\n`Added` for new features.\r\n`Changed` for changes in existing functionality.\r\n`Deprecated` for soon-to-be removed features.\r\n`Removed` for now removed features.\r\n`Fixed` for any bug fixes.\r\n`Security` in case of vulnerabilities.\r\n\r\nIf one of the changes is breaking include that as a second word e.g.\r\n\r\n  Removed BREAKING support for manifests v1\r\n-->\r\n\r\n```release-note\r\nAdded kf proxy-route command\r\nChanged default route destination in kf virtual services \r\n```\r\n","created_at":"2019-09-11T03:40:27Z","updated_at":"2019-09-18T20:43:26Z","closed_at":null,"merged_at":null,"merge_commit_sha":"5280341587f97c6a2eb18a5eb86cd16bebdc5aa2","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[{"id":1380772264,"node_id":"MDU6TGFiZWwxMzgwNzcyMjY0","url":"https://api.github.com/repos/google/kf/labels/cla:%20yes","name":"cla: yes","color":"63dd94","default":false}],"milestone":null,"commits_url":"https://api.github.com/repos/google/kf/pulls/684/commits","review_comments_url":"https://api.github.com/repos/google/kf/pulls/684/comments","review_comment_url":"https://api.github.com/repos/google/kf/pulls/comments{/number}","comments_url":"https://api.github.com/repos/google/kf/issues/684/comments","statuses_url":"https://api.github.com/repos/google/kf/statuses/80ffa72fc0850e847aa8ced2c480197fc33b4558","head":{"label":"google:test","ref":"test","sha":"80ffa72fc0850e847aa8ced2c480197fc33b4558","user":{"login":"google","id":1342004,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDIwMDQ=","avatar_url":"https://avatars1.githubusercontent.com/u/1342004?v=4","gravatar_id":"","url":"https://api.github.com/users/google","html_url":"https://github.com/google","followers_url":"https://api.github.com/users/google/followers","following_url":"https://api.github.com/users/google/following{/other_user}","gists_url":"https://api.github.com/users/google/gists{/gist_id}","starred_url":"https://api.github.com/users/google/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/google/subscriptions","organizations_url":"https://api.github.com/users/google/orgs","repos_url":"https://api.github.com/users/google/repos","events_url":"https://api.github.com/users/google/events{/privacy}","received_events_url":"https://api.github.com/users/google/received_events","type":"Organization","site_admin":false},"repo":{"id":184312842,"node_id":"MDEwOlJlcG9zaXRvcnkxODQzMTI4NDI=","name":"kf","full_name":"google/kf","private":false,"owner":{"login":"google","id":1342004,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDIwMDQ=","avatar_url":"https://avatars1.githubusercontent.com/u/1342004?v=4","gravatar_id":"","url":"https://api.github.com/users/google","html_url":"https://github.com/google","followers_url":"https://api.github.com/users/google/followers","following_url":"https://api.github.com/users/google/following{/other_user}","gists_url":"https://api.github.com/users/google/gists{/gist_id}","starred_url":"https://api.github.com/users/google/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/google/subscriptions","organizations_url":"https://api.github.com/users/google/orgs","repos_url":"https://api.github.com/users/google/repos","events_url":"https://api.github.com/users/google/events{/privacy}","received_events_url":"https://api.github.com/users/google/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/google/kf","description":"Feels like Cloud Foundry. Runs on Kubernetes. Powered by Knative and Istio.","fork":false,"url":"https://api.github.com/repos/google/kf","forks_url":"https://api.github.com/repos/google/kf/forks","keys_url":"https://api.github.com/repos/google/kf/keys{/key_id}","collaborators_url":"https://api.github.com/repos/google/kf/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/google/kf/teams","hooks_url":"https://api.github.com/repos/google/kf/hooks","issue_events_url":"https://api.github.com/repos/google/kf/issues/events{/number}","events_url":"https://api.github.com/repos/google/kf/events","assignees_url":"https://api.github.com/repos/google/kf/assignees{/user}","branches_url":"https://api.github.com/repos/google/kf/branches{/branch}","tags_url":"https://api.github.com/repos/google/kf/tags","blobs_url":"https://api.github.com/repos/google/kf/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/google/kf/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/google/kf/git/refs{/sha}","trees_url":"https://api.github.com/repos/google/kf/git/trees{/sha}","statuses_url":"https://api.github.com/repos/google/kf/statuses/{sha}","languages_url":"https://api.github.com/repos/google/kf/languages","stargazers_url":"https://api.github.com/repos/google/kf/stargazers","contributors_url":"https://api.github.com/repos/google/kf/contributors","subscribers_url":"https://api.github.com/repos/google/kf/subscribers","subscription_url":"https://api.github.com/repos/google/kf/subscription","commits_url":"https://api.github.com/repos/google/kf/commits{/sha}","git_commits_url":"https://api.github.com/repos/google/kf/git/commits{/sha}","comments_url":"https://api.github.com/repos/google/kf/comments{/number}","issue_comment_url":"https://api.github.com/repos/google/kf/issues/comments{/number}","contents_url":"https://api.github.com/repos/google/kf/contents/{+path}","compare_url":"https://api.github.com/repos/google/kf/compare/{base}...{head}","merges_url":"https://api.github.com/repos/google/kf/merges","archive_url":"https://api.github.com/repos/google/kf/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/google/kf/downloads","issues_url":"https://api.github.com/repos/google/kf/issues{/number}","pulls_url":"https://api.github.com/repos/google/kf/pulls{/number}","milestones_url":"https://api.github.com/repos/google/kf/milestones{/number}","notifications_url":"https://api.github.com/repos/google/kf/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/google/kf/labels{/name}","releases_url":"https://api.github.com/repos/google/kf/releases{/id}","deployments_url":"https://api.github.com/repos/google/kf/deployments","created_at":"2019-04-30T18:34:38Z","updated_at":"2019-09-18T19:22:01Z","pushed_at":"2019-09-18T20:12:21Z","git_url":"git://github.com/google/kf.git","ssh_url":"git@github.com:google/kf.git","clone_url":"https://github.com/google/kf.git","svn_url":"https://github.com/google/kf","homepage":"","size":4320,"stargazers_count":145,"watchers_count":145,"language":"Go","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":28,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":164,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":28,"open_issues":164,"watchers":145,"default_branch":"develop"}},"base":{"label":"google:develop","ref":"develop","sha":"de15e789de5c53eca565ede2fdfda1b6e8efd551","user":{"login":"google","id":1342004,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDIwMDQ=","avatar_url":"https://avatars1.githubusercontent.com/u/1342004?v=4","gravatar_id":"","url":"https://api.github.com/users/google","html_url":"https://github.com/google","followers_url":"https://api.github.com/users/google/followers","following_url":"https://api.github.com/users/google/following{/other_user}","gists_url":"https://api.github.com/users/google/gists{/gist_id}","starred_url":"https://api.github.com/users/google/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/google/subscriptions","organizations_url":"https://api.github.com/users/google/orgs","repos_url":"https://api.github.com/users/google/repos","events_url":"https://api.github.com/users/google/events{/privacy}","received_events_url":"https://api.github.com/users/google/received_events","type":"Organization","site_admin":false},"repo":{"id":184312842,"node_id":"MDEwOlJlcG9zaXRvcnkxODQzMTI4NDI=","name":"kf","full_name":"google/kf","private":false,"owner":{"login":"google","id":1342004,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDIwMDQ=","avatar_url":"https://avatars1.githubusercontent.com/u/1342004?v=4","gravatar_id":"","url":"https://api.github.com/users/google","html_url":"https://github.com/google","followers_url":"https://api.github.com/users/google/followers","following_url":"https://api.github.com/users/google/following{/other_user}","gists_url":"https://api.github.com/users/google/gists{/gist_id}","starred_url":"https://api.github.com/users/google/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/google/subscriptions","organizations_url":"https://api.github.com/users/google/orgs","repos_url":"https://api.github.com/users/google/repos","events_url":"https://api.github.com/users/google/events{/privacy}","received_events_url":"https://api.github.com/users/google/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/google/kf","description":"Feels like Cloud Foundry. Runs on Kubernetes. Powered by Knative and Istio.","fork":false,"url":"https://api.github.com/repos/google/kf","forks_url":"https://api.github.com/repos/google/kf/forks","keys_url":"https://api.github.com/repos/google/kf/keys{/key_id}","collaborators_url":"https://api.github.com/repos/google/kf/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/google/kf/teams","hooks_url":"https://api.github.com/repos/google/kf/hooks","issue_events_url":"https://api.github.com/repos/google/kf/issues/events{/number}","events_url":"https://api.github.com/repos/google/kf/events","assignees_url":"https://api.github.com/repos/google/kf/assignees{/user}","branches_url":"https://api.github.com/repos/google/kf/branches{/branch}","tags_url":"https://api.github.com/repos/google/kf/tags","blobs_url":"https://api.github.com/repos/google/kf/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/google/kf/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/google/kf/git/refs{/sha}","trees_url":"https://api.github.com/repos/google/kf/git/trees{/sha}","statuses_url":"https://api.github.com/repos/google/kf/statuses/{sha}","languages_url":"https://api.github.com/repos/google/kf/languages","stargazers_url":"https://api.github.com/repos/google/kf/stargazers","contributors_url":"https://api.github.com/repos/google/kf/contributors","subscribers_url":"https://api.github.com/repos/google/kf/subscribers","subscription_url":"https://api.github.com/repos/google/kf/subscription","commits_url":"https://api.github.com/repos/google/kf/commits{/sha}","git_commits_url":"https://api.github.com/repos/google/kf/git/commits{/sha}","comments_url":"https://api.github.com/repos/google/kf/comments{/number}","issue_comment_url":"https://api.github.com/repos/google/kf/issues/comments{/number}","contents_url":"https://api.github.com/repos/google/kf/contents/{+path}","compare_url":"https://api.github.com/repos/google/kf/compare/{base}...{head}","merges_url":"https://api.github.com/repos/google/kf/merges","archive_url":"https://api.github.com/repos/google/kf/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/google/kf/downloads","issues_url":"https://api.github.com/repos/google/kf/issues{/number}","pulls_url":"https://api.github.com/repos/google/kf/pulls{/number}","milestones_url":"https://api.github.com/repos/google/kf/milestones{/number}","notifications_url":"https://api.github.com/repos/google/kf/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/google/kf/labels{/name}","releases_url":"https://api.github.com/repos/google/kf/releases{/id}","deployments_url":"https://api.github.com/repos/google/kf/deployments","created_at":"2019-04-30T18:34:38Z","updated_at":"2019-09-18T19:22:01Z","pushed_at":"2019-09-18T20:12:21Z","git_url":"git://github.com/google/kf.git","ssh_url":"git@github.com:google/kf.git","clone_url":"https://github.com/google/kf.git","svn_url":"https://github.com/google/kf","homepage":"","size":4320,"stargazers_count":145,"watchers_count":145,"language":"Go","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":28,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":164,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":28,"open_issues":164,"watchers":145,"default_branch":"develop"}},"_links":{"self":{"href":"https://api.github.com/repos/google/kf/pulls/684"},"html":{"href":"https://github.com/google/kf/pull/684"},"issue":{"href":"https://api.github.com/repos/google/kf/issues/684"},"comments":{"href":"https://api.github.com/repos/google/kf/issues/684/comments"},"review_comments":{"href":"https://api.github.com/repos/google/kf/pulls/684/comments"},"review_comment":{"href":"https://api.github.com/repos/google/kf/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/google/kf/pulls/684/commits"},"statuses":{"href":"https://api.github.com/repos/google/kf/statuses/80ffa72fc0850e847aa8ced2c480197fc33b4558"}},"author_association":"MEMBER"}}
{"actor":{"display_login":"poy"}}