{"action":"created","comment":{"url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/pulls/comments/31193080","id":31193080,"diff_hunk":"@@ -0,0 +1,101 @@\n+#!/bin/bash\n+\n+# Copyright 2014 The Kubernetes Authors All rights reserved.\n+#\n+# Licensed under the Apache License, Version 2.0 (the \"License\");\n+# you may not use this file except in compliance with the License.\n+# You may obtain a copy of the License at\n+#\n+#     http://www.apache.org/licenses/LICENSE-2.0\n+#\n+# Unless required by applicable law or agreed to in writing, software\n+# distributed under the License is distributed on an \"AS IS\" BASIS,\n+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n+# See the License for the specific language governing permissions and\n+# limitations under the License.\n+\n+# Script to test web ui e2e tests using protractor works as expected.\n+\n+set -o errexit\n+set -o nounset\n+set -o pipefail\n+\n+KUBE_ROOT=$(dirname \"${BASH_SOURCE}\")/../../..\n+source \"${KUBE_ROOT}/hack/lib/init.sh\"\n+\n+# The api version in which objects are currently stored in etcd.\n+KUBE_OLD_API_VERSION=${KUBE_OLD_API_VERSION:-\"v1beta1\"}\n+# The api version in which our etcd objects should be converted to.\n+# The new api version\n+KUBE_NEW_API_VERSION=${KUBE_NEW_API_VERSION:-\"v1beta3\"}\n+\n+ETCD_HOST=${ETCD_HOST:-127.0.0.1}\n+ETCD_PORT=${ETCD_PORT:-4001}\n+API_PORT=${API_PORT:-8080}\n+API_HOST=${API_HOST:-127.0.0.1}\n+KUBELET_PORT=${KUBELET_PORT:-10250}\n+KUBE_API_VERSIONS=\"\"\n+RUNTIME_CONFIG=\"\"\n+\n+KUBECTL=\"${KUBE_OUTPUT_HOSTBIN}/kubectl\"\n+\n+function startApiServer() {\n+  kube::log::status \"Starting kube-apiserver with KUBE_API_VERSIONS: ${KUBE_API_VERSIONS} and runtime_config: ${RUNTIME_CONFIG}\"\n+\n+  KUBE_API_VERSIONS=\"${KUBE_API_VERSIONS}\" \\\n+    \"${KUBE_OUTPUT_HOSTBIN}/kube-apiserver\" \\\n+    --address=\"127.0.0.1\" \\\n+    --public_address_override=\"127.0.0.1\" \\\n+    --port=\"${API_PORT}\" \\\n+    --etcd_servers=\"http://${ETCD_HOST}:${ETCD_PORT}\" \\\n+    --public_address_override=\"127.0.0.1\" \\\n+    --kubelet_port=${KUBELET_PORT} \\\n+    --runtime_config=\"${RUNTIME_CONFIG}\" \\\n+    --cert_dir=\"${TMPDIR:-/tmp/}\" \\\n+    --portal_net=\"10.0.0.0/24\" 1>&2 &\n+  APISERVER_PID=$!\n+\n+  kube::util::wait_for_url \"http://127.0.0.1:${API_PORT}/healthz\" \"apiserver: \"\n+}\n+\n+function killApiServer() {\n+  kube::log::status \"Killing api server\"\n+  [[ -n ${APISERVER_PID-} ]] && kill ${APISERVER_PID} 1>&2 2>/dev/null\n+  unset APISERVER_PID\n+}\n+\n+function cleanup() {\n+  killApiServer\n+\n+  kube::etcd::cleanup\n+\n+  kube::log::status \"Clean up complete\"\n+}\n+\n+trap cleanup EXIT SIGINT\n+\n+which protractor >/dev/null || {\n+  kube::log::usage \"protractor must be in your PATH\"\n+  exit 1\n+}\n+\n+kube::etcd::start\n+\n+kube::log::status \"Running tests for web ui e2e scenario\"\n+\n+\"${KUBE_ROOT}/hack/build-go.sh\"","path":"www/test/hack/bootstrap-web-e2e.sh","position":86,"original_position":86,"commit_id":"925097ae1d1b74bc1a5e81466a1a0dd8e3cffb41","original_commit_id":"925097ae1d1b74bc1a5e81466a1a0dd8e3cffb41","user":{"login":"bcbroussard","id":1056950,"avatar_url":"https://avatars.githubusercontent.com/u/1056950?v=3","gravatar_id":"","url":"https://api.github.com/users/bcbroussard","html_url":"https://github.com/bcbroussard","followers_url":"https://api.github.com/users/bcbroussard/followers","following_url":"https://api.github.com/users/bcbroussard/following{/other_user}","gists_url":"https://api.github.com/users/bcbroussard/gists{/gist_id}","starred_url":"https://api.github.com/users/bcbroussard/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bcbroussard/subscriptions","organizations_url":"https://api.github.com/users/bcbroussard/orgs","repos_url":"https://api.github.com/users/bcbroussard/repos","events_url":"https://api.github.com/users/bcbroussard/events{/privacy}","received_events_url":"https://api.github.com/users/bcbroussard/received_events","type":"User","site_admin":false},"body":"Sure, I'll create a common apiserver library for both tests to use. \r\n\r\nI'm also happy to take out the `hack/build-go.sh` call from the web-e2e script, since it should speed up the test. Are you ok with adding the requirement of having the binaries pre-built?","created_at":"2015-05-28T00:03:54Z","updated_at":"2015-05-28T00:03:54Z","html_url":"https://github.com/GoogleCloudPlatform/kubernetes/pull/8639#discussion_r31193080","pull_request_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/pulls/8639","_links":{"self":{"href":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/pulls/comments/31193080"},"html":{"href":"https://github.com/GoogleCloudPlatform/kubernetes/pull/8639#discussion_r31193080"},"pull_request":{"href":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/pulls/8639"}}},"pull_request":{"url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/pulls/8639","id":35981431,"html_url":"https://github.com/GoogleCloudPlatform/kubernetes/pull/8639","diff_url":"https://github.com/GoogleCloudPlatform/kubernetes/pull/8639.diff","patch_url":"https://github.com/GoogleCloudPlatform/kubernetes/pull/8639.patch","issue_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/issues/8639","number":8639,"state":"open","locked":false,"title":"Added Travis CI protractor support for testing web ui","user":{"login":"bcbroussard","id":1056950,"avatar_url":"https://avatars.githubusercontent.com/u/1056950?v=3","gravatar_id":"","url":"https://api.github.com/users/bcbroussard","html_url":"https://github.com/bcbroussard","followers_url":"https://api.github.com/users/bcbroussard/followers","following_url":"https://api.github.com/users/bcbroussard/following{/other_user}","gists_url":"https://api.github.com/users/bcbroussard/gists{/gist_id}","starred_url":"https://api.github.com/users/bcbroussard/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bcbroussard/subscriptions","organizations_url":"https://api.github.com/users/bcbroussard/orgs","repos_url":"https://api.github.com/users/bcbroussard/repos","events_url":"https://api.github.com/users/bcbroussard/events{/privacy}","received_events_url":"https://api.github.com/users/bcbroussard/received_events","type":"User","site_admin":false},"body":"Added support for Travis CI to run angular protractor e2e tests for the web ui as discussed in #7122","created_at":"2015-05-21T21:50:07Z","updated_at":"2015-05-28T00:03:54Z","closed_at":null,"merged_at":null,"merge_commit_sha":"dc1c1b3e21c75372fdc26bd57e7d411f90ed9d95","assignee":{"login":"ixdy","id":8061296,"avatar_url":"https://avatars.githubusercontent.com/u/8061296?v=3","gravatar_id":"","url":"https://api.github.com/users/ixdy","html_url":"https://github.com/ixdy","followers_url":"https://api.github.com/users/ixdy/followers","following_url":"https://api.github.com/users/ixdy/following{/other_user}","gists_url":"https://api.github.com/users/ixdy/gists{/gist_id}","starred_url":"https://api.github.com/users/ixdy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ixdy/subscriptions","organizations_url":"https://api.github.com/users/ixdy/orgs","repos_url":"https://api.github.com/users/ixdy/repos","events_url":"https://api.github.com/users/ixdy/events{/privacy}","received_events_url":"https://api.github.com/users/ixdy/received_events","type":"User","site_admin":false},"milestone":null,"commits_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/pulls/8639/commits","review_comments_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/pulls/8639/comments","review_comment_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/pulls/comments{/number}","comments_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/issues/8639/comments","statuses_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/statuses/925097ae1d1b74bc1a5e81466a1a0dd8e3cffb41","head":{"label":"bcbroussard:travis-protractor","ref":"travis-protractor","sha":"925097ae1d1b74bc1a5e81466a1a0dd8e3cffb41","user":{"login":"bcbroussard","id":1056950,"avatar_url":"https://avatars.githubusercontent.com/u/1056950?v=3","gravatar_id":"","url":"https://api.github.com/users/bcbroussard","html_url":"https://github.com/bcbroussard","followers_url":"https://api.github.com/users/bcbroussard/followers","following_url":"https://api.github.com/users/bcbroussard/following{/other_user}","gists_url":"https://api.github.com/users/bcbroussard/gists{/gist_id}","starred_url":"https://api.github.com/users/bcbroussard/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bcbroussard/subscriptions","organizations_url":"https://api.github.com/users/bcbroussard/orgs","repos_url":"https://api.github.com/users/bcbroussard/repos","events_url":"https://api.github.com/users/bcbroussard/events{/privacy}","received_events_url":"https://api.github.com/users/bcbroussard/received_events","type":"User","site_admin":false},"repo":{"id":30310914,"name":"kubernetes","full_name":"bcbroussard/kubernetes","owner":{"login":"bcbroussard","id":1056950,"avatar_url":"https://avatars.githubusercontent.com/u/1056950?v=3","gravatar_id":"","url":"https://api.github.com/users/bcbroussard","html_url":"https://github.com/bcbroussard","followers_url":"https://api.github.com/users/bcbroussard/followers","following_url":"https://api.github.com/users/bcbroussard/following{/other_user}","gists_url":"https://api.github.com/users/bcbroussard/gists{/gist_id}","starred_url":"https://api.github.com/users/bcbroussard/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bcbroussard/subscriptions","organizations_url":"https://api.github.com/users/bcbroussard/orgs","repos_url":"https://api.github.com/users/bcbroussard/repos","events_url":"https://api.github.com/users/bcbroussard/events{/privacy}","received_events_url":"https://api.github.com/users/bcbroussard/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/bcbroussard/kubernetes","description":"Container Cluster Manager","fork":true,"url":"https://api.github.com/repos/bcbroussard/kubernetes","forks_url":"https://api.github.com/repos/bcbroussard/kubernetes/forks","keys_url":"https://api.github.com/repos/bcbroussard/kubernetes/keys{/key_id}","collaborators_url":"https://api.github.com/repos/bcbroussard/kubernetes/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/bcbroussard/kubernetes/teams","hooks_url":"https://api.github.com/repos/bcbroussard/kubernetes/hooks","issue_events_url":"https://api.github.com/repos/bcbroussard/kubernetes/issues/events{/number}","events_url":"https://api.github.com/repos/bcbroussard/kubernetes/events","assignees_url":"https://api.github.com/repos/bcbroussard/kubernetes/assignees{/user}","branches_url":"https://api.github.com/repos/bcbroussard/kubernetes/branches{/branch}","tags_url":"https://api.github.com/repos/bcbroussard/kubernetes/tags","blobs_url":"https://api.github.com/repos/bcbroussard/kubernetes/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/bcbroussard/kubernetes/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/bcbroussard/kubernetes/git/refs{/sha}","trees_url":"https://api.github.com/repos/bcbroussard/kubernetes/git/trees{/sha}","statuses_url":"https://api.github.com/repos/bcbroussard/kubernetes/statuses/{sha}","languages_url":"https://api.github.com/repos/bcbroussard/kubernetes/languages","stargazers_url":"https://api.github.com/repos/bcbroussard/kubernetes/stargazers","contributors_url":"https://api.github.com/repos/bcbroussard/kubernetes/contributors","subscribers_url":"https://api.github.com/repos/bcbroussard/kubernetes/subscribers","subscription_url":"https://api.github.com/repos/bcbroussard/kubernetes/subscription","commits_url":"https://api.github.com/repos/bcbroussard/kubernetes/commits{/sha}","git_commits_url":"https://api.github.com/repos/bcbroussard/kubernetes/git/commits{/sha}","comments_url":"https://api.github.com/repos/bcbroussard/kubernetes/comments{/number}","issue_comment_url":"https://api.github.com/repos/bcbroussard/kubernetes/issues/comments{/number}","contents_url":"https://api.github.com/repos/bcbroussard/kubernetes/contents/{+path}","compare_url":"https://api.github.com/repos/bcbroussard/kubernetes/compare/{base}...{head}","merges_url":"https://api.github.com/repos/bcbroussard/kubernetes/merges","archive_url":"https://api.github.com/repos/bcbroussard/kubernetes/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/bcbroussard/kubernetes/downloads","issues_url":"https://api.github.com/repos/bcbroussard/kubernetes/issues{/number}","pulls_url":"https://api.github.com/repos/bcbroussard/kubernetes/pulls{/number}","milestones_url":"https://api.github.com/repos/bcbroussard/kubernetes/milestones{/number}","notifications_url":"https://api.github.com/repos/bcbroussard/kubernetes/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/bcbroussard/kubernetes/labels{/name}","releases_url":"https://api.github.com/repos/bcbroussard/kubernetes/releases{/id}","created_at":"2015-02-04T17:16:53Z","updated_at":"2015-04-22T17:42:21Z","pushed_at":"2015-05-27T23:40:33Z","git_url":"git://github.com/bcbroussard/kubernetes.git","ssh_url":"git@github.com:bcbroussard/kubernetes.git","clone_url":"https://github.com/bcbroussard/kubernetes.git","svn_url":"https://github.com/bcbroussard/kubernetes","homepage":"http://kubernetes.io","size":62316,"stargazers_count":0,"watchers_count":0,"language":"Go","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"GoogleCloudPlatform:master","ref":"master","sha":"d9d12fd3f7036c92606fc3ba9046b365212fcd70","user":{"login":"GoogleCloudPlatform","id":2810941,"avatar_url":"https://avatars.githubusercontent.com/u/2810941?v=3","gravatar_id":"","url":"https://api.github.com/users/GoogleCloudPlatform","html_url":"https://github.com/GoogleCloudPlatform","followers_url":"https://api.github.com/users/GoogleCloudPlatform/followers","following_url":"https://api.github.com/users/GoogleCloudPlatform/following{/other_user}","gists_url":"https://api.github.com/users/GoogleCloudPlatform/gists{/gist_id}","starred_url":"https://api.github.com/users/GoogleCloudPlatform/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/GoogleCloudPlatform/subscriptions","organizations_url":"https://api.github.com/users/GoogleCloudPlatform/orgs","repos_url":"https://api.github.com/users/GoogleCloudPlatform/repos","events_url":"https://api.github.com/users/GoogleCloudPlatform/events{/privacy}","received_events_url":"https://api.github.com/users/GoogleCloudPlatform/received_events","type":"Organization","site_admin":false},"repo":{"id":20580498,"name":"kubernetes","full_name":"GoogleCloudPlatform/kubernetes","owner":{"login":"GoogleCloudPlatform","id":2810941,"avatar_url":"https://avatars.githubusercontent.com/u/2810941?v=3","gravatar_id":"","url":"https://api.github.com/users/GoogleCloudPlatform","html_url":"https://github.com/GoogleCloudPlatform","followers_url":"https://api.github.com/users/GoogleCloudPlatform/followers","following_url":"https://api.github.com/users/GoogleCloudPlatform/following{/other_user}","gists_url":"https://api.github.com/users/GoogleCloudPlatform/gists{/gist_id}","starred_url":"https://api.github.com/users/GoogleCloudPlatform/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/GoogleCloudPlatform/subscriptions","organizations_url":"https://api.github.com/users/GoogleCloudPlatform/orgs","repos_url":"https://api.github.com/users/GoogleCloudPlatform/repos","events_url":"https://api.github.com/users/GoogleCloudPlatform/events{/privacy}","received_events_url":"https://api.github.com/users/GoogleCloudPlatform/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/GoogleCloudPlatform/kubernetes","description":"Container Cluster Manager from Google","fork":false,"url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes","forks_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/forks","keys_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/keys{/key_id}","collaborators_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/teams","hooks_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/hooks","issue_events_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/issues/events{/number}","events_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/events","assignees_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/assignees{/user}","branches_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/branches{/branch}","tags_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/tags","blobs_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/git/refs{/sha}","trees_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/git/trees{/sha}","statuses_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/statuses/{sha}","languages_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/languages","stargazers_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/stargazers","contributors_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/contributors","subscribers_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/subscribers","subscription_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/subscription","commits_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/commits{/sha}","git_commits_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/git/commits{/sha}","comments_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/comments{/number}","issue_comment_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/issues/comments{/number}","contents_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/contents/{+path}","compare_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/compare/{base}...{head}","merges_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/merges","archive_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/downloads","issues_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/issues{/number}","pulls_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/pulls{/number}","milestones_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/milestones{/number}","notifications_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/labels{/name}","releases_url":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/releases{/id}","created_at":"2014-06-06T22:56:04Z","updated_at":"2015-05-27T23:55:11Z","pushed_at":"2015-05-28T00:01:46Z","git_url":"git://github.com/GoogleCloudPlatform/kubernetes.git","ssh_url":"git@github.com:GoogleCloudPlatform/kubernetes.git","clone_url":"https://github.com/GoogleCloudPlatform/kubernetes.git","svn_url":"https://github.com/GoogleCloudPlatform/kubernetes","homepage":"http://kubernetes.io","size":295015,"stargazers_count":7943,"watchers_count":7943,"language":"Go","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":1660,"mirror_url":null,"open_issues_count":1246,"forks":1660,"open_issues":1246,"watchers":7943,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/pulls/8639"},"html":{"href":"https://github.com/GoogleCloudPlatform/kubernetes/pull/8639"},"issue":{"href":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/issues/8639"},"comments":{"href":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/issues/8639/comments"},"review_comments":{"href":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/pulls/8639/comments"},"review_comment":{"href":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/pulls/8639/commits"},"statuses":{"href":"https://api.github.com/repos/GoogleCloudPlatform/kubernetes/statuses/925097ae1d1b74bc1a5e81466a1a0dd8e3cffb41"}}}}