{"action":"created","comment":{"url":"https://api.github.com/repos/kubernetes/kubernetes/pulls/comments/47157194","id":47157194,"diff_hunk":"@@ -197,3 +201,246 @@ func TestListImages(t *testing.T) {\n \t\tfr.CleanCalls()\n \t}\n }\n+\n+func TestGetPods(t *testing.T) {\n+\tfr := newFakeRktInterface()\n+\tfs := newFakeSystemd()\n+\tr := &Runtime{apisvc: fr, systemd: fs}\n+\n+\ttests := []struct {\n+\t\tk8sUID        types.UID\n+\t\tk8sName       string\n+\t\tk8sNamespace  string\n+\t\tk8sCreation   int64\n+\t\tk8sRestart    int\n+\t\tk8sContHashes []uint64\n+\t\trktPodState   rktapi.PodState\n+\t\tpods          []*rktapi.Pod\n+\t}{\n+\t\t{},\n+\t\t{\n+\t\t\tk8sUID:        types.UID(\"0\"),\n+\t\t\tk8sName:       \"guestbook\",\n+\t\t\tk8sNamespace:  \"default\",\n+\t\t\tk8sCreation:   10000000000,\n+\t\t\tk8sRestart:    1,\n+\t\t\tk8sContHashes: []uint64{2353434678},\n+\t\t\trktPodState:   rktapi.PodState_POD_STATE_RUNNING,\n+\t\t\tpods: []*rktapi.Pod{\n+\t\t\t\t{\n+\t\t\t\t\tState: rktapi.PodState_POD_STATE_RUNNING,\n+\t\t\t\t\tApps: []*rktapi.App{\n+\t\t\t\t\t\t{\n+\t\t\t\t\t\t\tName: \"test\",\n+\t\t\t\t\t\t\tImage: &rktapi.Image{\n+\t\t\t\t\t\t\t\tName: \"test\",\n+\t\t\t\t\t\t\t\tManifest: mustMarshalImageManifest(\n+\t\t\t\t\t\t\t\t\t&appcschema.ImageManifest{\n+\t\t\t\t\t\t\t\t\t\tACKind:    appcschema.ImageManifestKind,\n+\t\t\t\t\t\t\t\t\t\tACVersion: appcschema.AppContainerVersion,\n+\t\t\t\t\t\t\t\t\t\tName:      *appctypes.MustACIdentifier(\"test\"),\n+\t\t\t\t\t\t\t\t\t\tAnnotations: appctypes.Annotations{\n+\t\t\t\t\t\t\t\t\t\t\tappctypes.Annotation{\n+\t\t\t\t\t\t\t\t\t\t\t\tName:  *appctypes.MustACIdentifier(k8sRktContainerHashAnno),\n+\t\t\t\t\t\t\t\t\t\t\t\tValue: \"2353434678\",\n+\t\t\t\t\t\t\t\t\t\t\t},\n+\t\t\t\t\t\t\t\t\t\t},\n+\t\t\t\t\t\t\t\t\t},\n+\t\t\t\t\t\t\t\t),\n+\t\t\t\t\t\t\t},\n+\t\t\t\t\t\t},\n+\t\t\t\t\t},\n+\t\t\t\t\tManifest: mustMarshalPodManifest(\n+\t\t\t\t\t\t&appcschema.PodManifest{\n+\t\t\t\t\t\t\tACKind:    appcschema.PodManifestKind,\n+\t\t\t\t\t\t\tACVersion: appcschema.AppContainerVersion,\n+\t\t\t\t\t\t\tAnnotations: appctypes.Annotations{\n+\t\t\t\t\t\t\t\tappctypes.Annotation{\n+\t\t\t\t\t\t\t\t\tName:  *appctypes.MustACIdentifier(k8sRktKubeletAnno),\n+\t\t\t\t\t\t\t\t\tValue: k8sRktKubeletAnnoValue,\n+\t\t\t\t\t\t\t\t},\n+\t\t\t\t\t\t\t\tappctypes.Annotation{\n+\t\t\t\t\t\t\t\t\tName:  *appctypes.MustACIdentifier(k8sRktUIDAnno),\n+\t\t\t\t\t\t\t\t\tValue: \"0\",\n+\t\t\t\t\t\t\t\t},\n+\t\t\t\t\t\t\t\tappctypes.Annotation{\n+\t\t\t\t\t\t\t\t\tName:  *appctypes.MustACIdentifier(k8sRktNameAnno),\n+\t\t\t\t\t\t\t\t\tValue: \"guestbook\",\n+\t\t\t\t\t\t\t\t},\n+\t\t\t\t\t\t\t\tappctypes.Annotation{\n+\t\t\t\t\t\t\t\t\tName:  *appctypes.MustACIdentifier(k8sRktNamespaceAnno),\n+\t\t\t\t\t\t\t\t\tValue: \"default\",\n+\t\t\t\t\t\t\t\t},\n+\t\t\t\t\t\t\t\tappctypes.Annotation{\n+\t\t\t\t\t\t\t\t\tName:  *appctypes.MustACIdentifier(k8sRktCreationTimeAnno),\n+\t\t\t\t\t\t\t\t\tValue: \"10000000000\",\n+\t\t\t\t\t\t\t\t},\n+\t\t\t\t\t\t\t\tappctypes.Annotation{\n+\t\t\t\t\t\t\t\t\tName:  *appctypes.MustACIdentifier(k8sRktRestartCountAnno),\n+\t\t\t\t\t\t\t\t\tValue: \"1\",\n+\t\t\t\t\t\t\t\t},\n+\t\t\t\t\t\t\t},\n+\t\t\t\t\t\t},\n+\t\t\t\t\t),\n+\t\t\t\t},\n+\t\t\t},\n+\t\t},\n+\t\t{\n+\t\t\tk8sUID:        types.UID(\"1\"),\n+\t\t\tk8sName:       \"test-pod\",\n+\t\t\tk8sNamespace:  \"default\",\n+\t\t\tk8sCreation:   10000000001,\n+\t\t\tk8sRestart:    3,\n+\t\t\tk8sContHashes: []uint64{2353434682, 8732645},\n+\t\t\trktPodState:   rktapi.PodState_POD_STATE_EXITED,\n+\t\t\tpods: []*rktapi.Pod{\n+\t\t\t\t{\n+\t\t\t\t\tState: rktapi.PodState_POD_STATE_EXITED,\n+\t\t\t\t\tApps: []*rktapi.App{\n+\t\t\t\t\t\t{\n+\t\t\t\t\t\t\tName: \"test\",\n+\t\t\t\t\t\t\tImage: &rktapi.Image{\n+\t\t\t\t\t\t\t\tName: \"test\",\n+\t\t\t\t\t\t\t\tManifest: mustMarshalImageManifest(\n+\t\t\t\t\t\t\t\t\t&appcschema.ImageManifest{\n+\t\t\t\t\t\t\t\t\t\tACKind:    appcschema.ImageManifestKind,\n+\t\t\t\t\t\t\t\t\t\tACVersion: appcschema.AppContainerVersion,\n+\t\t\t\t\t\t\t\t\t\tName:      *appctypes.MustACIdentifier(\"test\"),\n+\t\t\t\t\t\t\t\t\t\tAnnotations: appctypes.Annotations{\n+\t\t\t\t\t\t\t\t\t\t\tappctypes.Annotation{\n+\t\t\t\t\t\t\t\t\t\t\t\tName:  *appctypes.MustACIdentifier(k8sRktContainerHashAnno),\n+\t\t\t\t\t\t\t\t\t\t\t\tValue: \"2353434682\",\n+\t\t\t\t\t\t\t\t\t\t\t},\n+\t\t\t\t\t\t\t\t\t\t},\n+\t\t\t\t\t\t\t\t\t},\n+\t\t\t\t\t\t\t\t),\n+\t\t\t\t\t\t\t},\n+\t\t\t\t\t\t},\n+\t\t\t\t\t\t{\n+\t\t\t\t\t\t\tName: \"test2\",\n+\t\t\t\t\t\t\tImage: &rktapi.Image{\n+\t\t\t\t\t\t\t\tName: \"test2\",\n+\t\t\t\t\t\t\t\tManifest: mustMarshalImageManifest(\n+\t\t\t\t\t\t\t\t\t&appcschema.ImageManifest{\n+\t\t\t\t\t\t\t\t\t\tACKind:    appcschema.ImageManifestKind,\n+\t\t\t\t\t\t\t\t\t\tACVersion: appcschema.AppContainerVersion,\n+\t\t\t\t\t\t\t\t\t\tName:      *appctypes.MustACIdentifier(\"test2\"),\n+\t\t\t\t\t\t\t\t\t\tAnnotations: appctypes.Annotations{\n+\t\t\t\t\t\t\t\t\t\t\tappctypes.Annotation{\n+\t\t\t\t\t\t\t\t\t\t\t\tName:  *appctypes.MustACIdentifier(k8sRktContainerHashAnno),\n+\t\t\t\t\t\t\t\t\t\t\t\tValue: \"8732645\",\n+\t\t\t\t\t\t\t\t\t\t\t},\n+\t\t\t\t\t\t\t\t\t\t},\n+\t\t\t\t\t\t\t\t\t},\n+\t\t\t\t\t\t\t\t),\n+\t\t\t\t\t\t\t},\n+\t\t\t\t\t\t},\n+\t\t\t\t\t},\n+\t\t\t\t\tManifest: mustMarshalPodManifest(\n+\t\t\t\t\t\t&appcschema.PodManifest{\n+\t\t\t\t\t\t\tACKind:    appcschema.PodManifestKind,\n+\t\t\t\t\t\t\tACVersion: appcschema.AppContainerVersion,\n+\t\t\t\t\t\t\tAnnotations: appctypes.Annotations{\n+\t\t\t\t\t\t\t\tappctypes.Annotation{\n+\t\t\t\t\t\t\t\t\tName:  *appctypes.MustACIdentifier(k8sRktKubeletAnno),\n+\t\t\t\t\t\t\t\t\tValue: k8sRktKubeletAnnoValue,\n+\t\t\t\t\t\t\t\t},\n+\t\t\t\t\t\t\t\tappctypes.Annotation{\n+\t\t\t\t\t\t\t\t\tName:  *appctypes.MustACIdentifier(k8sRktUIDAnno),\n+\t\t\t\t\t\t\t\t\tValue: \"1\",\n+\t\t\t\t\t\t\t\t},\n+\t\t\t\t\t\t\t\tappctypes.Annotation{\n+\t\t\t\t\t\t\t\t\tName:  *appctypes.MustACIdentifier(k8sRktNameAnno),\n+\t\t\t\t\t\t\t\t\tValue: \"test-pod\",\n+\t\t\t\t\t\t\t\t},\n+\t\t\t\t\t\t\t\tappctypes.Annotation{\n+\t\t\t\t\t\t\t\t\tName:  *appctypes.MustACIdentifier(k8sRktNamespaceAnno),\n+\t\t\t\t\t\t\t\t\tValue: \"default\",\n+\t\t\t\t\t\t\t\t},\n+\t\t\t\t\t\t\t\tappctypes.Annotation{\n+\t\t\t\t\t\t\t\t\tName:  *appctypes.MustACIdentifier(k8sRktCreationTimeAnno),\n+\t\t\t\t\t\t\t\t\tValue: \"10000000001\",\n+\t\t\t\t\t\t\t\t},\n+\t\t\t\t\t\t\t\tappctypes.Annotation{\n+\t\t\t\t\t\t\t\t\tName:  *appctypes.MustACIdentifier(k8sRktRestartCountAnno),\n+\t\t\t\t\t\t\t\t\tValue: \"3\",\n+\t\t\t\t\t\t\t\t},\n+\t\t\t\t\t\t\t},\n+\t\t\t\t\t\t},\n+\t\t\t\t\t),\n+\t\t\t\t},\n+\t\t\t},\n+\t\t},\n+\t}\n+\n+\tfor i, tt := range tests {\n+\t\tfr.pods = tt.pods\n+\n+\t\tpods, err := r.GetPods(true)\n+\t\tif err != nil {\n+\t\t\tt.Errorf(\"%v\", err)\n+\t\t}\n+\t\tassert.Equal(t, len(pods), len(tt.pods), fmt.Sprintf(\"test case %d: mismatched number of pods\", i))\n+\n+\t\tfor j, pod := range pods {\n+\t\t\tassert.Equal(t, pod.ID, tt.k8sUID, fmt.Sprintf(\"test case %d: mismatched UIDs\", i))\n+\t\t\tassert.Equal(t, pod.Name, tt.k8sName, fmt.Sprintf(\"test case %d: mismatched Names\", i))\n+\t\t\tassert.Equal(t, pod.Namespace, tt.k8sNamespace, fmt.Sprintf(\"test case %d: mismatched Namespaces\", i))\n+\t\t\tassert.Equal(t, len(pod.Containers), len(tt.pods[j].Apps), fmt.Sprintf(\"test case %d: mismatched number of containers\", i))\n+\t\t\tfor k, cont := range pod.Containers {\n+\t\t\t\tassert.Equal(t, cont.Created, tt.k8sCreation, fmt.Sprintf(\"test case %d: mismatched creation times\", i))\n+\t\t\t\tassert.Equal(t, cont.Hash, tt.k8sContHashes[k], fmt.Sprintf(\"test case %d: mismatched container hashes\", i))\n+\t\t\t}\n+\t\t}\n+\n+\t\tvar inspectPodCalls []string\n+\t\tfor range pods {\n+\t\t\tinspectPodCalls = append(inspectPodCalls, \"InspectPod\")\n+\t\t}\n+\t\tassert.Equal(t, append([]string{\"ListPods\"}, inspectPodCalls...), fr.called, fmt.Sprintf(\"test case %d: unexpected called list\", i))\n+\n+\t\tfr.CleanCalls()\n+\n+\t\tpods, err = r.GetPods(false)\n+\t\tif err != nil {\n+\t\t\tt.Errorf(\"%v\", err)\n+\t\t}\n+\n+\t\tvar expectedPods []types.UID\n+\t\tfor _, p := range tt.pods {\n+\t\t\tif p.State == rktapi.PodState_POD_STATE_RUNNING {\n+\t\t\t\texpectedPods = append(expectedPods, tt.k8sUID)\n+\t\t\t}\n+\t\t}\n+\n+\t\tassert.Equal(t, len(expectedPods), len(pods), fmt.Sprint(\"test case %d: mismatched number of pods when all is false\"))\n+\n+\t\tfor j, p := range pods {\n+\t\t\tassert.Equal(t, expectedPods[j], p.ID, fmt.Sprint(\"test case %d: unexpected UID\"))","path":"pkg/kubelet/rkt/rkt_test.go","position":235,"original_position":235,"commit_id":"a80f280d334719c8652300d15cb043f33d4f3012","original_commit_id":"a80f280d334719c8652300d15cb043f33d4f3012","user":{"login":"yifan-gu","id":3278588,"avatar_url":"https://avatars.githubusercontent.com/u/3278588?v=3","gravatar_id":"","url":"https://api.github.com/users/yifan-gu","html_url":"https://github.com/yifan-gu","followers_url":"https://api.github.com/users/yifan-gu/followers","following_url":"https://api.github.com/users/yifan-gu/following{/other_user}","gists_url":"https://api.github.com/users/yifan-gu/gists{/gist_id}","starred_url":"https://api.github.com/users/yifan-gu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yifan-gu/subscriptions","organizations_url":"https://api.github.com/users/yifan-gu/orgs","repos_url":"https://api.github.com/users/yifan-gu/repos","events_url":"https://api.github.com/users/yifan-gu/events{/privacy}","received_events_url":"https://api.github.com/users/yifan-gu/received_events","type":"User","site_admin":false},"body":"mising j for the %d","created_at":"2015-12-09T21:48:33Z","updated_at":"2015-12-09T21:48:33Z","html_url":"https://github.com/kubernetes/kubernetes/pull/17969#discussion_r47157194","pull_request_url":"https://api.github.com/repos/kubernetes/kubernetes/pulls/17969","_links":{"self":{"href":"https://api.github.com/repos/kubernetes/kubernetes/pulls/comments/47157194"},"html":{"href":"https://github.com/kubernetes/kubernetes/pull/17969#discussion_r47157194"},"pull_request":{"href":"https://api.github.com/repos/kubernetes/kubernetes/pulls/17969"}}},"pull_request":{"url":"https://api.github.com/repos/kubernetes/kubernetes/pulls/17969","id":52162654,"html_url":"https://github.com/kubernetes/kubernetes/pull/17969","diff_url":"https://github.com/kubernetes/kubernetes/pull/17969.diff","patch_url":"https://github.com/kubernetes/kubernetes/pull/17969.patch","issue_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/17969","number":17969,"state":"open","locked":false,"title":"rkt: rewrote GetPods to use rkt's api service","user":{"login":"dgonyeo","id":2439413,"avatar_url":"https://avatars.githubusercontent.com/u/2439413?v=3","gravatar_id":"","url":"https://api.github.com/users/dgonyeo","html_url":"https://github.com/dgonyeo","followers_url":"https://api.github.com/users/dgonyeo/followers","following_url":"https://api.github.com/users/dgonyeo/following{/other_user}","gists_url":"https://api.github.com/users/dgonyeo/gists{/gist_id}","starred_url":"https://api.github.com/users/dgonyeo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dgonyeo/subscriptions","organizations_url":"https://api.github.com/users/dgonyeo/orgs","repos_url":"https://api.github.com/users/dgonyeo/repos","events_url":"https://api.github.com/users/dgonyeo/events{/privacy}","received_events_url":"https://api.github.com/users/dgonyeo/received_events","type":"User","site_admin":false},"body":"This commit modifies the kubelet to use rkt's new API service when the kubelet wants to list all current pods.\r\n\r\nThis involved adding annotations to the rkt pod's manifest that contain\r\ninformation about the kubernetes pod, which is later read by the\r\nkubelet.","created_at":"2015-11-30T18:45:18Z","updated_at":"2015-12-09T21:48:33Z","closed_at":null,"merged_at":null,"merge_commit_sha":"bbe4303c074b1bbcadc79fee5771f288c7cbd642","assignee":{"login":"yujuhong","id":10524058,"avatar_url":"https://avatars.githubusercontent.com/u/10524058?v=3","gravatar_id":"","url":"https://api.github.com/users/yujuhong","html_url":"https://github.com/yujuhong","followers_url":"https://api.github.com/users/yujuhong/followers","following_url":"https://api.github.com/users/yujuhong/following{/other_user}","gists_url":"https://api.github.com/users/yujuhong/gists{/gist_id}","starred_url":"https://api.github.com/users/yujuhong/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yujuhong/subscriptions","organizations_url":"https://api.github.com/users/yujuhong/orgs","repos_url":"https://api.github.com/users/yujuhong/repos","events_url":"https://api.github.com/users/yujuhong/events{/privacy}","received_events_url":"https://api.github.com/users/yujuhong/received_events","type":"User","site_admin":false},"milestone":null,"commits_url":"https://api.github.com/repos/kubernetes/kubernetes/pulls/17969/commits","review_comments_url":"https://api.github.com/repos/kubernetes/kubernetes/pulls/17969/comments","review_comment_url":"https://api.github.com/repos/kubernetes/kubernetes/pulls/comments{/number}","comments_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/17969/comments","statuses_url":"https://api.github.com/repos/kubernetes/kubernetes/statuses/a80f280d334719c8652300d15cb043f33d4f3012","head":{"label":"dgonyeo:rkt_api_get_pods","ref":"rkt_api_get_pods","sha":"a80f280d334719c8652300d15cb043f33d4f3012","user":{"login":"dgonyeo","id":2439413,"avatar_url":"https://avatars.githubusercontent.com/u/2439413?v=3","gravatar_id":"","url":"https://api.github.com/users/dgonyeo","html_url":"https://github.com/dgonyeo","followers_url":"https://api.github.com/users/dgonyeo/followers","following_url":"https://api.github.com/users/dgonyeo/following{/other_user}","gists_url":"https://api.github.com/users/dgonyeo/gists{/gist_id}","starred_url":"https://api.github.com/users/dgonyeo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dgonyeo/subscriptions","organizations_url":"https://api.github.com/users/dgonyeo/orgs","repos_url":"https://api.github.com/users/dgonyeo/repos","events_url":"https://api.github.com/users/dgonyeo/events{/privacy}","received_events_url":"https://api.github.com/users/dgonyeo/received_events","type":"User","site_admin":false},"repo":{"id":39520589,"name":"kubernetes","full_name":"dgonyeo/kubernetes","owner":{"login":"dgonyeo","id":2439413,"avatar_url":"https://avatars.githubusercontent.com/u/2439413?v=3","gravatar_id":"","url":"https://api.github.com/users/dgonyeo","html_url":"https://github.com/dgonyeo","followers_url":"https://api.github.com/users/dgonyeo/followers","following_url":"https://api.github.com/users/dgonyeo/following{/other_user}","gists_url":"https://api.github.com/users/dgonyeo/gists{/gist_id}","starred_url":"https://api.github.com/users/dgonyeo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dgonyeo/subscriptions","organizations_url":"https://api.github.com/users/dgonyeo/orgs","repos_url":"https://api.github.com/users/dgonyeo/repos","events_url":"https://api.github.com/users/dgonyeo/events{/privacy}","received_events_url":"https://api.github.com/users/dgonyeo/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/dgonyeo/kubernetes","description":"Container Cluster Manager from Google","fork":true,"url":"https://api.github.com/repos/dgonyeo/kubernetes","forks_url":"https://api.github.com/repos/dgonyeo/kubernetes/forks","keys_url":"https://api.github.com/repos/dgonyeo/kubernetes/keys{/key_id}","collaborators_url":"https://api.github.com/repos/dgonyeo/kubernetes/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/dgonyeo/kubernetes/teams","hooks_url":"https://api.github.com/repos/dgonyeo/kubernetes/hooks","issue_events_url":"https://api.github.com/repos/dgonyeo/kubernetes/issues/events{/number}","events_url":"https://api.github.com/repos/dgonyeo/kubernetes/events","assignees_url":"https://api.github.com/repos/dgonyeo/kubernetes/assignees{/user}","branches_url":"https://api.github.com/repos/dgonyeo/kubernetes/branches{/branch}","tags_url":"https://api.github.com/repos/dgonyeo/kubernetes/tags","blobs_url":"https://api.github.com/repos/dgonyeo/kubernetes/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/dgonyeo/kubernetes/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/dgonyeo/kubernetes/git/refs{/sha}","trees_url":"https://api.github.com/repos/dgonyeo/kubernetes/git/trees{/sha}","statuses_url":"https://api.github.com/repos/dgonyeo/kubernetes/statuses/{sha}","languages_url":"https://api.github.com/repos/dgonyeo/kubernetes/languages","stargazers_url":"https://api.github.com/repos/dgonyeo/kubernetes/stargazers","contributors_url":"https://api.github.com/repos/dgonyeo/kubernetes/contributors","subscribers_url":"https://api.github.com/repos/dgonyeo/kubernetes/subscribers","subscription_url":"https://api.github.com/repos/dgonyeo/kubernetes/subscription","commits_url":"https://api.github.com/repos/dgonyeo/kubernetes/commits{/sha}","git_commits_url":"https://api.github.com/repos/dgonyeo/kubernetes/git/commits{/sha}","comments_url":"https://api.github.com/repos/dgonyeo/kubernetes/comments{/number}","issue_comment_url":"https://api.github.com/repos/dgonyeo/kubernetes/issues/comments{/number}","contents_url":"https://api.github.com/repos/dgonyeo/kubernetes/contents/{+path}","compare_url":"https://api.github.com/repos/dgonyeo/kubernetes/compare/{base}...{head}","merges_url":"https://api.github.com/repos/dgonyeo/kubernetes/merges","archive_url":"https://api.github.com/repos/dgonyeo/kubernetes/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/dgonyeo/kubernetes/downloads","issues_url":"https://api.github.com/repos/dgonyeo/kubernetes/issues{/number}","pulls_url":"https://api.github.com/repos/dgonyeo/kubernetes/pulls{/number}","milestones_url":"https://api.github.com/repos/dgonyeo/kubernetes/milestones{/number}","notifications_url":"https://api.github.com/repos/dgonyeo/kubernetes/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/dgonyeo/kubernetes/labels{/name}","releases_url":"https://api.github.com/repos/dgonyeo/kubernetes/releases{/id}","created_at":"2015-07-22T17:37:39Z","updated_at":"2015-07-22T17:37:46Z","pushed_at":"2015-12-09T20:07:09Z","git_url":"git://github.com/dgonyeo/kubernetes.git","ssh_url":"git@github.com:dgonyeo/kubernetes.git","clone_url":"https://github.com/dgonyeo/kubernetes.git","svn_url":"https://github.com/dgonyeo/kubernetes","homepage":"http://kubernetes.io","size":134945,"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":"kubernetes:master","ref":"master","sha":"5f7019ab9d28db1ad2322fa75222861a266c7497","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":"Container Cluster Manager from Google","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}","created_at":"2014-06-06T22:56:04Z","updated_at":"2015-12-09T21:05:02Z","pushed_at":"2015-12-09T21:40:35Z","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":290233,"stargazers_count":11700,"watchers_count":11700,"language":"Go","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":3169,"mirror_url":null,"open_issues_count":2549,"forks":3169,"open_issues":2549,"watchers":11700,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/kubernetes/kubernetes/pulls/17969"},"html":{"href":"https://github.com/kubernetes/kubernetes/pull/17969"},"issue":{"href":"https://api.github.com/repos/kubernetes/kubernetes/issues/17969"},"comments":{"href":"https://api.github.com/repos/kubernetes/kubernetes/issues/17969/comments"},"review_comments":{"href":"https://api.github.com/repos/kubernetes/kubernetes/pulls/17969/comments"},"review_comment":{"href":"https://api.github.com/repos/kubernetes/kubernetes/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/kubernetes/kubernetes/pulls/17969/commits"},"statuses":{"href":"https://api.github.com/repos/kubernetes/kubernetes/statuses/a80f280d334719c8652300d15cb043f33d4f3012"}}}}