{"action":"created","comment":{"url":"https://api.github.com/repos/kubernetes/kubernetes/pulls/comments/79154687","id":79154687,"diff_hunk":"@@ -60,12 +60,119 @@ const (\n \tRollbackDone = \"DeploymentRollback\"\n \t// OverlapAnnotation marks deployments with overlapping selector with other deployments\n \t// TODO: Delete this annotation when we gracefully handle overlapping selectors. See https://github.com/kubernetes/kubernetes/issues/2210\n+\t// TODO: Should be a Condition.\n \tOverlapAnnotation = \"deployment.kubernetes.io/error-selector-overlapping-with\"\n \t// SelectorUpdateAnnotation marks the last time deployment selector update\n \t// TODO: Delete this annotation when we gracefully handle overlapping selectors. See https://github.com/kubernetes/kubernetes/issues/2210\n+\t// TODO: Should be a Condition.\n \tSelectorUpdateAnnotation = \"deployment.kubernetes.io/selector-updated-at\"\n+\n+\t// Reasons for deployment conditions\n+\t//\n+\t// ReplicaSetUpdatedReason is added in a deployment when one of its replica sets is updated as part\n+\t// of the rollout process.\n+\tReplicaSetUpdatedReason = \"ReplicaSetUpdated\"\n+\t// FailedRSCreateReason is added in a deployment when it cannot create a new replica set.\n+\tFailedRSCreateReason = \"ReplicaSetCreateErr\"\n+\t// NewReplicaSetReason is added in a deployment when it creates a new replica set.\n+\tNewReplicaSetReason = \"NewReplicaSetCreated\"\n+\t// FoundNewRSReason is added in a deployment when it adopts an existing replica set.\n+\tFoundNewRSReason = \"FoundNewReplicaSet\"\n+\t// NewRSAvailableReason is added in a deployment when its newest replica set is made available\n+\t// ie. the number of new pods that have passed readiness checks and run for at least minReadySeconds\n+\t// is at least the minimum available pods that need to run for the deployment.\n+\tNewRSAvailableReason = \"NewReplicaSetAvailable\"\n+\t// TimedOutReason is added in a deployment when its newest replica set fails to show any progress\n+\t// within the given deadline (progressDeadlineSeconds).\n+\tTimedOutReason = \"DeploymentTimedOut\"\n+\t// PausedDeployReason is added in a deployment when it is paused. Lack of progress shouldn't be\n+\t// estimated once a deployment is paused.\n+\tPausedDeployReason = \"DeploymentPaused\"\n+\t// ResumedDeployReason is added in a deployment when it is resumed. Useful for not failing accidentally\n+\t// deployments that paused amidst a rollout and are bounded by a deadline.\n+\tResumedDeployReason = \"DeploymentResumed\"\n )\n \n+// NewDeploymentCondition creates a new deployment condition.\n+func NewDeploymentCondition(condType extensions.DeploymentConditionType, status api.ConditionStatus, reason, message string) *extensions.DeploymentCondition {\n+\treturn &extensions.DeploymentCondition{\n+\t\tType:               condType,\n+\t\tStatus:             status,\n+\t\tLastTransitionTime: unversioned.Now(),\n+\t\tReason:             reason,\n+\t\tMessage:            message,\n+\t}\n+}\n+\n+// DeploymentConditionExists returns if a condition with the provided type, status, and reason already exists\n+// in the deployment status.\n+func DeploymentConditionExists(status extensions.DeploymentStatus, condType extensions.DeploymentConditionType, condStatus api.ConditionStatus, condReason string) bool {\n+\tfor _, c := range status.Conditions {\n+\t\tif c.Type == condType && c.Status == condStatus && c.Reason == condReason {\n+\t\t\treturn true\n+\t\t}\n+\t}\n+\treturn false\n+}\n+\n+// SetDeploymentCondition updates the deployment to include the provided condition.\n+func SetDeploymentCondition(status *extensions.DeploymentStatus, condition extensions.DeploymentCondition) {\n+\tnewConditions := filterOutCondition(status.Conditions, condition.Type)\n+\tstatus.Conditions = append(newConditions, condition)\n+}\n+\n+// RemoveDeploymentCondition removes the deployment condition with the provided type.\n+func RemoveDeploymentCondition(status *extensions.DeploymentStatus, condType extensions.DeploymentConditionType) {\n+\tstatus.Conditions = filterOutCondition(status.Conditions, condType)\n+}\n+\n+// filterOutCondition returns a new slice of deployment conditions without conditions with the provided type.\n+func filterOutCondition(conditions []extensions.DeploymentCondition, condType extensions.DeploymentConditionType) []extensions.DeploymentCondition {\n+\tnewConditions := []extensions.DeploymentCondition{}\n+\tfor _, c := range conditions {\n+\t\tif c.Type == condType {\n+\t\t\tcontinue\n+\t\t}\n+\t\tnewConditions = append(newConditions, c)\n+\t}\n+\treturn newConditions\n+}\n+\n+// ConditionFromWarningEvent transforms a warning event into a deployment condition.\n+// Events passed in this helper should belong to a replica set. Only warnings for a\n+// replica set currently are for failed creation or deletion of a pod, so we bound\n+// this helper to accept just those.\n+func ConditionFromWarningEvent(event api.Event) *extensions.DeploymentCondition {","path":"pkg/controller/deployment/util/deployment_util.go","position":86,"original_position":86,"commit_id":"917f23e3ce37293ccca6f36a2fb005c0a040f30d","original_commit_id":"e7471024eae180f592aadf54eca8e6cbca97d4f4","user":{"login":"kargakis","id":3900799,"avatar_url":"https://avatars.githubusercontent.com/u/3900799?v=3","gravatar_id":"","url":"https://api.github.com/users/kargakis","html_url":"https://github.com/kargakis","followers_url":"https://api.github.com/users/kargakis/followers","following_url":"https://api.github.com/users/kargakis/following{/other_user}","gists_url":"https://api.github.com/users/kargakis/gists{/gist_id}","starred_url":"https://api.github.com/users/kargakis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kargakis/subscriptions","organizations_url":"https://api.github.com/users/kargakis/orgs","repos_url":"https://api.github.com/users/kargakis/repos","events_url":"https://api.github.com/users/kargakis/events{/privacy}","received_events_url":"https://api.github.com/users/kargakis/received_events","type":"User","site_admin":false},"body":"ok","created_at":"2016-09-16T11:59:28Z","updated_at":"2016-09-16T11:59:29Z","html_url":"https://github.com/kubernetes/kubernetes/pull/19343#discussion_r79154687","pull_request_url":"https://api.github.com/repos/kubernetes/kubernetes/pulls/19343","_links":{"self":{"href":"https://api.github.com/repos/kubernetes/kubernetes/pulls/comments/79154687"},"html":{"href":"https://github.com/kubernetes/kubernetes/pull/19343#discussion_r79154687"},"pull_request":{"href":"https://api.github.com/repos/kubernetes/kubernetes/pulls/19343"}}},"pull_request":{"url":"https://api.github.com/repos/kubernetes/kubernetes/pulls/19343","id":55260071,"html_url":"https://github.com/kubernetes/kubernetes/pull/19343","diff_url":"https://github.com/kubernetes/kubernetes/pull/19343.diff","patch_url":"https://github.com/kubernetes/kubernetes/pull/19343.patch","issue_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/19343","number":19343,"state":"open","locked":false,"title":"Add perma-failed deployments","user":{"login":"kargakis","id":3900799,"avatar_url":"https://avatars.githubusercontent.com/u/3900799?v=3","gravatar_id":"","url":"https://api.github.com/users/kargakis","html_url":"https://github.com/kargakis","followers_url":"https://api.github.com/users/kargakis/followers","following_url":"https://api.github.com/users/kargakis/following{/other_user}","gists_url":"https://api.github.com/users/kargakis/gists{/gist_id}","starred_url":"https://api.github.com/users/kargakis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kargakis/subscriptions","organizations_url":"https://api.github.com/users/kargakis/orgs","repos_url":"https://api.github.com/users/kargakis/repos","events_url":"https://api.github.com/users/kargakis/events{/privacy}","received_events_url":"https://api.github.com/users/kargakis/received_events","type":"User","site_admin":false},"body":"This PR adds support for failing deployments based on a timeout\r\nparameter defined in the spec. If there is no progress for the amount\r\nof time defined as progressDeadlineSeconds then the deployment will be\r\nmarked as failed and will not be retried by the deployment controller\r\nuntil a new template change occurs. Progress in the context of a\r\ndeployment means scaling up new pods and scaling down old pods.\r\n\r\n@ironcladlou @janetkuo @bgrant0607 @mfojtik @smarterclayton \r\n\r\nFixes https://github.com/kubernetes/kubernetes/issues/14519\r\n\r\n<!-- Reviewable:start -->\r\n---\r\nThis change is [<img src=\"http://reviewable.k8s.io/review_button.svg\" height=\"35\" align=\"absmiddle\" alt=\"Reviewable\"/>](http://reviewable.k8s.io/reviews/kubernetes/kubernetes/19343)\r\n<!-- Reviewable:end -->\r\n","created_at":"2016-01-06T20:26:48Z","updated_at":"2016-09-16T11:59:29Z","closed_at":null,"merged_at":null,"merge_commit_sha":"f2f4b81a6fa773598faeed666bc9459bb56e98f6","assignee":{"login":"mfojtik","id":44136,"avatar_url":"https://avatars.githubusercontent.com/u/44136?v=3","gravatar_id":"","url":"https://api.github.com/users/mfojtik","html_url":"https://github.com/mfojtik","followers_url":"https://api.github.com/users/mfojtik/followers","following_url":"https://api.github.com/users/mfojtik/following{/other_user}","gists_url":"https://api.github.com/users/mfojtik/gists{/gist_id}","starred_url":"https://api.github.com/users/mfojtik/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mfojtik/subscriptions","organizations_url":"https://api.github.com/users/mfojtik/orgs","repos_url":"https://api.github.com/users/mfojtik/repos","events_url":"https://api.github.com/users/mfojtik/events{/privacy}","received_events_url":"https://api.github.com/users/mfojtik/received_events","type":"User","site_admin":false},"assignees":[{"login":"mfojtik","id":44136,"avatar_url":"https://avatars.githubusercontent.com/u/44136?v=3","gravatar_id":"","url":"https://api.github.com/users/mfojtik","html_url":"https://github.com/mfojtik","followers_url":"https://api.github.com/users/mfojtik/followers","following_url":"https://api.github.com/users/mfojtik/following{/other_user}","gists_url":"https://api.github.com/users/mfojtik/gists{/gist_id}","starred_url":"https://api.github.com/users/mfojtik/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mfojtik/subscriptions","organizations_url":"https://api.github.com/users/mfojtik/orgs","repos_url":"https://api.github.com/users/mfojtik/repos","events_url":"https://api.github.com/users/mfojtik/events{/privacy}","received_events_url":"https://api.github.com/users/mfojtik/received_events","type":"User","site_admin":false},{"login":"bgrant0607","id":7725777,"avatar_url":"https://avatars.githubusercontent.com/u/7725777?v=3","gravatar_id":"","url":"https://api.github.com/users/bgrant0607","html_url":"https://github.com/bgrant0607","followers_url":"https://api.github.com/users/bgrant0607/followers","following_url":"https://api.github.com/users/bgrant0607/following{/other_user}","gists_url":"https://api.github.com/users/bgrant0607/gists{/gist_id}","starred_url":"https://api.github.com/users/bgrant0607/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bgrant0607/subscriptions","organizations_url":"https://api.github.com/users/bgrant0607/orgs","repos_url":"https://api.github.com/users/bgrant0607/repos","events_url":"https://api.github.com/users/bgrant0607/events{/privacy}","received_events_url":"https://api.github.com/users/bgrant0607/received_events","type":"User","site_admin":false},{"login":"erictune","id":8105590,"avatar_url":"https://avatars.githubusercontent.com/u/8105590?v=3","gravatar_id":"","url":"https://api.github.com/users/erictune","html_url":"https://github.com/erictune","followers_url":"https://api.github.com/users/erictune/followers","following_url":"https://api.github.com/users/erictune/following{/other_user}","gists_url":"https://api.github.com/users/erictune/gists{/gist_id}","starred_url":"https://api.github.com/users/erictune/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/erictune/subscriptions","organizations_url":"https://api.github.com/users/erictune/orgs","repos_url":"https://api.github.com/users/erictune/repos","events_url":"https://api.github.com/users/erictune/events{/privacy}","received_events_url":"https://api.github.com/users/erictune/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/kubernetes/kubernetes/milestones/17","html_url":"https://github.com/kubernetes/kubernetes/milestones/next-candidate","labels_url":"https://api.github.com/repos/kubernetes/kubernetes/milestones/17/labels","id":1510379,"number":17,"title":"next-candidate","description":"Candidates for the next milestone","creator":{"login":"bgrant0607","id":7725777,"avatar_url":"https://avatars.githubusercontent.com/u/7725777?v=3","gravatar_id":"","url":"https://api.github.com/users/bgrant0607","html_url":"https://github.com/bgrant0607","followers_url":"https://api.github.com/users/bgrant0607/followers","following_url":"https://api.github.com/users/bgrant0607/following{/other_user}","gists_url":"https://api.github.com/users/bgrant0607/gists{/gist_id}","starred_url":"https://api.github.com/users/bgrant0607/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bgrant0607/subscriptions","organizations_url":"https://api.github.com/users/bgrant0607/orgs","repos_url":"https://api.github.com/users/bgrant0607/repos","events_url":"https://api.github.com/users/bgrant0607/events{/privacy}","received_events_url":"https://api.github.com/users/bgrant0607/received_events","type":"User","site_admin":false},"open_issues":308,"closed_issues":145,"state":"open","created_at":"2016-01-16T17:58:20Z","updated_at":"2016-09-16T11:41:41Z","due_on":null,"closed_at":null},"commits_url":"https://api.github.com/repos/kubernetes/kubernetes/pulls/19343/commits","review_comments_url":"https://api.github.com/repos/kubernetes/kubernetes/pulls/19343/comments","review_comment_url":"https://api.github.com/repos/kubernetes/kubernetes/pulls/comments{/number}","comments_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/19343/comments","statuses_url":"https://api.github.com/repos/kubernetes/kubernetes/statuses/917f23e3ce37293ccca6f36a2fb005c0a040f30d","head":{"label":"kargakis:perma-failed-deployments","ref":"perma-failed-deployments","sha":"917f23e3ce37293ccca6f36a2fb005c0a040f30d","user":{"login":"kargakis","id":3900799,"avatar_url":"https://avatars.githubusercontent.com/u/3900799?v=3","gravatar_id":"","url":"https://api.github.com/users/kargakis","html_url":"https://github.com/kargakis","followers_url":"https://api.github.com/users/kargakis/followers","following_url":"https://api.github.com/users/kargakis/following{/other_user}","gists_url":"https://api.github.com/users/kargakis/gists{/gist_id}","starred_url":"https://api.github.com/users/kargakis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kargakis/subscriptions","organizations_url":"https://api.github.com/users/kargakis/orgs","repos_url":"https://api.github.com/users/kargakis/repos","events_url":"https://api.github.com/users/kargakis/events{/privacy}","received_events_url":"https://api.github.com/users/kargakis/received_events","type":"User","site_admin":false},"repo":{"id":33254730,"name":"kubernetes","full_name":"kargakis/kubernetes","owner":{"login":"kargakis","id":3900799,"avatar_url":"https://avatars.githubusercontent.com/u/3900799?v=3","gravatar_id":"","url":"https://api.github.com/users/kargakis","html_url":"https://github.com/kargakis","followers_url":"https://api.github.com/users/kargakis/followers","following_url":"https://api.github.com/users/kargakis/following{/other_user}","gists_url":"https://api.github.com/users/kargakis/gists{/gist_id}","starred_url":"https://api.github.com/users/kargakis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kargakis/subscriptions","organizations_url":"https://api.github.com/users/kargakis/orgs","repos_url":"https://api.github.com/users/kargakis/repos","events_url":"https://api.github.com/users/kargakis/events{/privacy}","received_events_url":"https://api.github.com/users/kargakis/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/kargakis/kubernetes","description":"Container Cluster Manager from Google","fork":true,"url":"https://api.github.com/repos/kargakis/kubernetes","forks_url":"https://api.github.com/repos/kargakis/kubernetes/forks","keys_url":"https://api.github.com/repos/kargakis/kubernetes/keys{/key_id}","collaborators_url":"https://api.github.com/repos/kargakis/kubernetes/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/kargakis/kubernetes/teams","hooks_url":"https://api.github.com/repos/kargakis/kubernetes/hooks","issue_events_url":"https://api.github.com/repos/kargakis/kubernetes/issues/events{/number}","events_url":"https://api.github.com/repos/kargakis/kubernetes/events","assignees_url":"https://api.github.com/repos/kargakis/kubernetes/assignees{/user}","branches_url":"https://api.github.com/repos/kargakis/kubernetes/branches{/branch}","tags_url":"https://api.github.com/repos/kargakis/kubernetes/tags","blobs_url":"https://api.github.com/repos/kargakis/kubernetes/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/kargakis/kubernetes/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/kargakis/kubernetes/git/refs{/sha}","trees_url":"https://api.github.com/repos/kargakis/kubernetes/git/trees{/sha}","statuses_url":"https://api.github.com/repos/kargakis/kubernetes/statuses/{sha}","languages_url":"https://api.github.com/repos/kargakis/kubernetes/languages","stargazers_url":"https://api.github.com/repos/kargakis/kubernetes/stargazers","contributors_url":"https://api.github.com/repos/kargakis/kubernetes/contributors","subscribers_url":"https://api.github.com/repos/kargakis/kubernetes/subscribers","subscription_url":"https://api.github.com/repos/kargakis/kubernetes/subscription","commits_url":"https://api.github.com/repos/kargakis/kubernetes/commits{/sha}","git_commits_url":"https://api.github.com/repos/kargakis/kubernetes/git/commits{/sha}","comments_url":"https://api.github.com/repos/kargakis/kubernetes/comments{/number}","issue_comment_url":"https://api.github.com/repos/kargakis/kubernetes/issues/comments{/number}","contents_url":"https://api.github.com/repos/kargakis/kubernetes/contents/{+path}","compare_url":"https://api.github.com/repos/kargakis/kubernetes/compare/{base}...{head}","merges_url":"https://api.github.com/repos/kargakis/kubernetes/merges","archive_url":"https://api.github.com/repos/kargakis/kubernetes/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/kargakis/kubernetes/downloads","issues_url":"https://api.github.com/repos/kargakis/kubernetes/issues{/number}","pulls_url":"https://api.github.com/repos/kargakis/kubernetes/pulls{/number}","milestones_url":"https://api.github.com/repos/kargakis/kubernetes/milestones{/number}","notifications_url":"https://api.github.com/repos/kargakis/kubernetes/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/kargakis/kubernetes/labels{/name}","releases_url":"https://api.github.com/repos/kargakis/kubernetes/releases{/id}","deployments_url":"https://api.github.com/repos/kargakis/kubernetes/deployments","created_at":"2015-04-01T15:11:37Z","updated_at":"2016-01-12T10:44:51Z","pushed_at":"2016-09-15T16:42:24Z","git_url":"git://github.com/kargakis/kubernetes.git","ssh_url":"git@github.com:kargakis/kubernetes.git","clone_url":"https://github.com/kargakis/kubernetes.git","svn_url":"https://github.com/kargakis/kubernetes","homepage":"http://kubernetes.io","size":321130,"stargazers_count":0,"watchers_count":0,"language":"Go","has_issues":false,"has_downloads":true,"has_wiki":true,"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":"kubernetes:master","ref":"master","sha":"39e3c986cc448b42892b6d66dca0cdae9909f455","user":{"login":"kubernetes","id":13629408,"avatar_url":"https://avatars.githubusercontent.com/u/13629408?v=3","gravatar_id":"","url":"https://api.github.com/users/kubernetes","html_url":"https://github.com/kubernetes","followers_url":"https://api.github.com/users/kubernetes/followers","following_url":"https://api.github.com/users/kubernetes/following{/other_user}","gists_url":"https://api.github.com/users/kubernetes/gists{/gist_id}","starred_url":"https://api.github.com/users/kubernetes/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kubernetes/subscriptions","organizations_url":"https://api.github.com/users/kubernetes/orgs","repos_url":"https://api.github.com/users/kubernetes/repos","events_url":"https://api.github.com/users/kubernetes/events{/privacy}","received_events_url":"https://api.github.com/users/kubernetes/received_events","type":"Organization","site_admin":false},"repo":{"id":20580498,"name":"kubernetes","full_name":"kubernetes/kubernetes","owner":{"login":"kubernetes","id":13629408,"avatar_url":"https://avatars.githubusercontent.com/u/13629408?v=3","gravatar_id":"","url":"https://api.github.com/users/kubernetes","html_url":"https://github.com/kubernetes","followers_url":"https://api.github.com/users/kubernetes/followers","following_url":"https://api.github.com/users/kubernetes/following{/other_user}","gists_url":"https://api.github.com/users/kubernetes/gists{/gist_id}","starred_url":"https://api.github.com/users/kubernetes/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kubernetes/subscriptions","organizations_url":"https://api.github.com/users/kubernetes/orgs","repos_url":"https://api.github.com/users/kubernetes/repos","events_url":"https://api.github.com/users/kubernetes/events{/privacy}","received_events_url":"https://api.github.com/users/kubernetes/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/kubernetes/kubernetes","description":"Production-Grade Container Scheduling and Management","fork":false,"url":"https://api.github.com/repos/kubernetes/kubernetes","forks_url":"https://api.github.com/repos/kubernetes/kubernetes/forks","keys_url":"https://api.github.com/repos/kubernetes/kubernetes/keys{/key_id}","collaborators_url":"https://api.github.com/repos/kubernetes/kubernetes/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/kubernetes/kubernetes/teams","hooks_url":"https://api.github.com/repos/kubernetes/kubernetes/hooks","issue_events_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/events{/number}","events_url":"https://api.github.com/repos/kubernetes/kubernetes/events","assignees_url":"https://api.github.com/repos/kubernetes/kubernetes/assignees{/user}","branches_url":"https://api.github.com/repos/kubernetes/kubernetes/branches{/branch}","tags_url":"https://api.github.com/repos/kubernetes/kubernetes/tags","blobs_url":"https://api.github.com/repos/kubernetes/kubernetes/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/kubernetes/kubernetes/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/kubernetes/kubernetes/git/refs{/sha}","trees_url":"https://api.github.com/repos/kubernetes/kubernetes/git/trees{/sha}","statuses_url":"https://api.github.com/repos/kubernetes/kubernetes/statuses/{sha}","languages_url":"https://api.github.com/repos/kubernetes/kubernetes/languages","stargazers_url":"https://api.github.com/repos/kubernetes/kubernetes/stargazers","contributors_url":"https://api.github.com/repos/kubernetes/kubernetes/contributors","subscribers_url":"https://api.github.com/repos/kubernetes/kubernetes/subscribers","subscription_url":"https://api.github.com/repos/kubernetes/kubernetes/subscription","commits_url":"https://api.github.com/repos/kubernetes/kubernetes/commits{/sha}","git_commits_url":"https://api.github.com/repos/kubernetes/kubernetes/git/commits{/sha}","comments_url":"https://api.github.com/repos/kubernetes/kubernetes/comments{/number}","issue_comment_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/comments{/number}","contents_url":"https://api.github.com/repos/kubernetes/kubernetes/contents/{+path}","compare_url":"https://api.github.com/repos/kubernetes/kubernetes/compare/{base}...{head}","merges_url":"https://api.github.com/repos/kubernetes/kubernetes/merges","archive_url":"https://api.github.com/repos/kubernetes/kubernetes/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/kubernetes/kubernetes/downloads","issues_url":"https://api.github.com/repos/kubernetes/kubernetes/issues{/number}","pulls_url":"https://api.github.com/repos/kubernetes/kubernetes/pulls{/number}","milestones_url":"https://api.github.com/repos/kubernetes/kubernetes/milestones{/number}","notifications_url":"https://api.github.com/repos/kubernetes/kubernetes/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/kubernetes/kubernetes/labels{/name}","releases_url":"https://api.github.com/repos/kubernetes/kubernetes/releases{/id}","deployments_url":"https://api.github.com/repos/kubernetes/kubernetes/deployments","created_at":"2014-06-06T22:56:04Z","updated_at":"2016-09-16T11:37:56Z","pushed_at":"2016-09-16T11:43:11Z","git_url":"git://github.com/kubernetes/kubernetes.git","ssh_url":"git@github.com:kubernetes/kubernetes.git","clone_url":"https://github.com/kubernetes/kubernetes.git","svn_url":"https://github.com/kubernetes/kubernetes","homepage":"http://kubernetes.io","size":564639,"stargazers_count":16843,"watchers_count":16843,"language":"Go","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":5432,"mirror_url":null,"open_issues_count":4468,"forks":5432,"open_issues":4468,"watchers":16843,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/kubernetes/kubernetes/pulls/19343"},"html":{"href":"https://github.com/kubernetes/kubernetes/pull/19343"},"issue":{"href":"https://api.github.com/repos/kubernetes/kubernetes/issues/19343"},"comments":{"href":"https://api.github.com/repos/kubernetes/kubernetes/issues/19343/comments"},"review_comments":{"href":"https://api.github.com/repos/kubernetes/kubernetes/pulls/19343/comments"},"review_comment":{"href":"https://api.github.com/repos/kubernetes/kubernetes/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/kubernetes/kubernetes/pulls/19343/commits"},"statuses":{"href":"https://api.github.com/repos/kubernetes/kubernetes/statuses/917f23e3ce37293ccca6f36a2fb005c0a040f30d"}}}}
{"actor":{"display_login":"kargakis"}}