{"action":"created","comment":{"url":"https://api.github.com/repos/kubernetes/kubernetes/pulls/comments/46976213","id":46976213,"diff_hunk":"@@ -0,0 +1,255 @@\n+<!-- BEGIN MUNGE: UNVERSIONED_WARNING -->\n+\n+<!-- BEGIN STRIP_FOR_RELEASE -->\n+\n+<img src=\"http://kubernetes.io/img/warning.png\" alt=\"WARNING\"\n+     width=\"25\" height=\"25\">\n+<img src=\"http://kubernetes.io/img/warning.png\" alt=\"WARNING\"\n+     width=\"25\" height=\"25\">\n+<img src=\"http://kubernetes.io/img/warning.png\" alt=\"WARNING\"\n+     width=\"25\" height=\"25\">\n+<img src=\"http://kubernetes.io/img/warning.png\" alt=\"WARNING\"\n+     width=\"25\" height=\"25\">\n+<img src=\"http://kubernetes.io/img/warning.png\" alt=\"WARNING\"\n+     width=\"25\" height=\"25\">\n+\n+<h2>PLEASE NOTE: This document applies to the HEAD of the source tree</h2>\n+\n+If you are using a released version of Kubernetes, you should\n+refer to the docs that go with that version.\n+\n+<strong>\n+The latest release of this document can be found\n+[here](http://releases.k8s.io/release-1.1/examples/job/expansions/README.md).\n+\n+Documentation for other releases can be found at\n+[releases.k8s.io](http://releases.k8s.io).\n+</strong>\n+--\n+\n+<!-- END STRIP_FOR_RELEASE -->\n+\n+<!-- END MUNGE: UNVERSIONED_WARNING -->\n+\n+# Example: Multiple Job Objects from Template Expansion\n+\n+In this example, we will run multiple Kubernetes Jobs created from\n+a common template.  You may want to be familiar with the basic,\n+non-parallel, use of [Job](../../../docs/user-guide/jobs.md) first.\n+\n+## Basic Template Expansion\n+\n+First, create a template of a Job object:\n+\n+<!-- BEGIN MUNGE: EXAMPLE job.yaml.txt -->\n+\n+```\n+apiVersion: extensions/v1beta1\n+kind: Job\n+metadata:\n+  name: process-item-$ITEM\n+spec:\n+  selector:\n+    matchLabels:\n+      app: jobexample\n+      item: $ITEM\n+  template:\n+    metadata:\n+      name: jobexample\n+      labels:\n+        app: jobexample\n+        item: $ITEM\n+    spec:\n+      containers:\n+      - name: c\n+        image: busybox\n+        command: [\"sh\", \"-c\", \"echo Processing item $ITEM && sleep 5\"]\n+      restartPolicy: Never\n+```\n+\n+[Download example](job.yaml.txt?raw=true)\n+<!-- END MUNGE: EXAMPLE job.yaml.txt -->\n+\n+Unlike a *pod template*, our *job template* is not a Kubernetes API type.  It is just\n+a yaml representation of a Job object that has some placeholders that need to be filled\n+in before it can be used.  The `$ITEM` syntax is not meaningful to Kubernetes.\n+\n+In this example, the only processing the container does is to `echo` a string and sleep for a bit.\n+In a real use case, the processing would be some substantial computation, such as rendering a frame\n+of a movie, or processing a range of rows in a database.  The \"$ITEM\" parameter would specify for\n+example, the frame number or the row range.\n+\n+This Job has two labels. The first label, `app=jobexample`, distinguishes this group of jobs from\n+other groups of jobs (these are not shown, but there might be other ones).  This label\n+makes it convenient to operate on all the jobs in the group at once.  The second label, with\n+key `item`, distinguishes individual jobs in the group.  Each Job object needs to have\n+a unique label that no other job has.  This is it.\n+Neither of these label keys are special to kubernetes -- you can pick your own label scheme.\n+\n+Next, expand the template into multiple files, one for each item to be processed.\n+\n+```console\n+# Expand files into a temporary directory\n+$ mkdir ./jobs\n+$ for i in apple banana cherry\n+do\n+  cat job.yaml.txt | sed \"s/\\$ITEM/$i/\" > ./jobs/job-$i.yaml\n+done\n+$ ls jobs/\n+job-apple.yaml\n+job-banana.yaml\n+job-cherry.yaml\n+```\n+\n+Here, we used `sed` to replace the string `$ITEM` with the the loop variable.\n+You could use any type of template language (jinja2, erb) or write a program\n+to generate the Job objects.\n+\n+Next, create all the jobs with one kubectl command:\n+\n+```console\n+$ kubectl create -f ./jobs\n+job \"process-item-apple\" created\n+job \"process-item-banana\" created\n+job \"process-item-cherry\" created\n+```\n+\n+Now, check on the jobs:\n+\n+```console\n+$ kubectl get jobs -l app=jobexample -L item\n+JOB                   CONTAINER(S)   IMAGE(S)   SELECTOR                               SUCCESSFUL ITEM\n+process-item-apple    c              busybox    app in (jobexample),item in (apple)    1          apple\n+process-item-banana   c              busybox    app in (jobexample),item in (banana)   1          banana\n+process-item-cherry   c              busybox    app in (jobexample),item in (cherry)   1          cherry\n+```\n+\n+Here we use the `-l` option to select all jobs that are part of this\n+group of jobs.  (There might be other unrelated jobs in the system that we\n+do not care to see.)\n+\n+The `-L` option adds an extra column with just the `item` label value.\n+\n+We can check on the pods as well using the same label selector:\n+\n+```console\n+$ kubectl get pods -l app=jobexample -L item\n+NAME                        READY     STATUS      RESTARTS   AGE       ITEM\n+process-item-apple-kixwv    0/1       Completed   0          4m        apple\n+process-item-banana-wrsf7   0/1       Completed   0          4m        banana\n+process-item-cherry-dnfu9   0/1       Completed   0          4m        cherry\n+```\n+\n+There is not a single command to check on the output of all jobs at once,\n+but looping over all the pods is pretty easy:\n+\n+```console\n+$ for p in $(kubectl get pods -l app=jobexample -o name | cut -f 2 -d \"/\")\n+do\n+  kubectl logs $p\n+done\n+Processing item apple\n+Processing item banana\n+Processing item cherry\n+```\n+\n+## Multiple Template Parameters\n+\n+In the first example, each instance of the template had one parameter, and that parameter was also\n+used as a label.  However label keys are limited in [what characters they can\n+contain](labels.md#syntax-and-character-set).\n+\n+This slightly more complex example uses a the jinja2 template language to generate our objects.\n+We will use a one-line python script to convert the template to a file.\n+\n+First, download or paste the following template file to a file called `job.yaml.jinja2`:\n+\n+<!-- BEGIN MUNGE: EXAMPLE job.yaml.jinja2 -->\n+\n+```\n+{%- set params = [{ \"name\": \"apple\", \"url\": \"http://www.orangepippin.com/apples\", },\n+                  { \"name\": \"banana\", \"url\": \"https://en.wikipedia.org/wiki/Banana\", },\n+                  { \"name\": \"raspberry\", \"url\": \"https://www.raspberrypi.org/\" }]\n+%}\n+{%- for p in params %}\n+{%- set name = p[\"name\"] %}\n+{%- set url = p[\"url\"] %}\n+apiVersion: extensions/v1beta1\n+kind: Job\n+metadata:\n+  name: jobexample-{{ name }}\n+spec:\n+  selector:\n+    matchLabels:\n+      app: jobexample\n+      item: {{ name }}\n+  template:\n+    metadata:\n+      name: jobexample\n+      labels:\n+        app: jobexample\n+        item: {{ name }}\n+    spec:\n+      containers:\n+      - name: c\n+        image: busybox\n+        command: [\"sh\", \"-c\", \"echo Processing URL {{ url }} && sleep 5\"]\n+      restartPolicy: Never\n+---\n+{%- endfor %}\n+```\n+\n+[Download example](job.yaml.jinja2?raw=true)\n+<!-- END MUNGE: EXAMPLE job.yaml.jinja2 -->\n+\n+The above template defines parameters for each job object using a list of\n+python dicts (lines 1-4).  Then a for loop emits one job yaml object\n+for each set of parameters (remaining lines).\n+We take advantage of the fact that multiple yaml documents can be concatenated\n+with the `---` separator (second to last line).\n+.)  We can pipe the output directly to kubectl to\n+create the objects.\n+\n+Now, use a one-line python program to expand the template:\n+\n+```\n+$ alias render_template='python -c \"from jinja2 import Template; import sys; print(Template(sys.stdin.read()).render());\"'\n+```\n+\n+You will need the jinja2 package installed first.","path":"examples/job/expansions/README.md","position":219,"original_position":219,"commit_id":"a2a37b39f190993707f78a8a2471ceb22f819a95","original_commit_id":"a2a37b39f190993707f78a8a2471ceb22f819a95","user":{"login":"soltysh","id":576341,"avatar_url":"https://avatars.githubusercontent.com/u/576341?v=3","gravatar_id":"","url":"https://api.github.com/users/soltysh","html_url":"https://github.com/soltysh","followers_url":"https://api.github.com/users/soltysh/followers","following_url":"https://api.github.com/users/soltysh/following{/other_user}","gists_url":"https://api.github.com/users/soltysh/gists{/gist_id}","starred_url":"https://api.github.com/users/soltysh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/soltysh/subscriptions","organizations_url":"https://api.github.com/users/soltysh/orgs","repos_url":"https://api.github.com/users/soltysh/repos","events_url":"https://api.github.com/users/soltysh/events{/privacy}","received_events_url":"https://api.github.com/users/soltysh/received_events","type":"User","site_admin":false},"body":"Maybe add something like this:\r\n`pip install --user jinja2` ","created_at":"2015-12-08T16:29:54Z","updated_at":"2015-12-08T16:29:54Z","html_url":"https://github.com/kubernetes/kubernetes/pull/17345#discussion_r46976213","pull_request_url":"https://api.github.com/repos/kubernetes/kubernetes/pulls/17345","_links":{"self":{"href":"https://api.github.com/repos/kubernetes/kubernetes/pulls/comments/46976213"},"html":{"href":"https://github.com/kubernetes/kubernetes/pull/17345#discussion_r46976213"},"pull_request":{"href":"https://api.github.com/repos/kubernetes/kubernetes/pulls/17345"}}},"pull_request":{"url":"https://api.github.com/repos/kubernetes/kubernetes/pulls/17345","id":50885064,"html_url":"https://github.com/kubernetes/kubernetes/pull/17345","diff_url":"https://github.com/kubernetes/kubernetes/pull/17345.diff","patch_url":"https://github.com/kubernetes/kubernetes/pull/17345.patch","issue_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/17345","number":17345,"state":"open","locked":false,"title":"Job patterns documentation","user":{"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},"body":"Work in progress, on documenting 3 different ways to run a job with parallel pods.  I am working on a 4th way, which is the so-called \"static work assignment with downward API\".  That isn't in this PR.    This PR isn't ready for a final review, but I would like feedback at this point from people on whether it makes sense, if there are things I could do better, and how we feel about there being these different ways to use\r\njob.\r\n\r\nCCing people who like jobs:\r\n\r\n@soltysh @mikedanese @davidopp @bgrant0607 ","created_at":"2015-11-16T23:54:26Z","updated_at":"2015-12-08T16:29:54Z","closed_at":null,"merged_at":null,"merge_commit_sha":"50b5543177bad23b5217672af99edb4dcbf55e3f","assignee":{"login":"soltysh","id":576341,"avatar_url":"https://avatars.githubusercontent.com/u/576341?v=3","gravatar_id":"","url":"https://api.github.com/users/soltysh","html_url":"https://github.com/soltysh","followers_url":"https://api.github.com/users/soltysh/followers","following_url":"https://api.github.com/users/soltysh/following{/other_user}","gists_url":"https://api.github.com/users/soltysh/gists{/gist_id}","starred_url":"https://api.github.com/users/soltysh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/soltysh/subscriptions","organizations_url":"https://api.github.com/users/soltysh/orgs","repos_url":"https://api.github.com/users/soltysh/repos","events_url":"https://api.github.com/users/soltysh/events{/privacy}","received_events_url":"https://api.github.com/users/soltysh/received_events","type":"User","site_admin":false},"milestone":null,"commits_url":"https://api.github.com/repos/kubernetes/kubernetes/pulls/17345/commits","review_comments_url":"https://api.github.com/repos/kubernetes/kubernetes/pulls/17345/comments","review_comment_url":"https://api.github.com/repos/kubernetes/kubernetes/pulls/comments{/number}","comments_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/17345/comments","statuses_url":"https://api.github.com/repos/kubernetes/kubernetes/statuses/a2a37b39f190993707f78a8a2471ceb22f819a95","head":{"label":"erictune:job-patterns","ref":"job-patterns","sha":"a2a37b39f190993707f78a8a2471ceb22f819a95","user":{"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},"repo":{"id":21629362,"name":"kubernetes","full_name":"erictune/kubernetes","owner":{"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},"private":false,"html_url":"https://github.com/erictune/kubernetes","description":"Container Cluster Manager","fork":true,"url":"https://api.github.com/repos/erictune/kubernetes","forks_url":"https://api.github.com/repos/erictune/kubernetes/forks","keys_url":"https://api.github.com/repos/erictune/kubernetes/keys{/key_id}","collaborators_url":"https://api.github.com/repos/erictune/kubernetes/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/erictune/kubernetes/teams","hooks_url":"https://api.github.com/repos/erictune/kubernetes/hooks","issue_events_url":"https://api.github.com/repos/erictune/kubernetes/issues/events{/number}","events_url":"https://api.github.com/repos/erictune/kubernetes/events","assignees_url":"https://api.github.com/repos/erictune/kubernetes/assignees{/user}","branches_url":"https://api.github.com/repos/erictune/kubernetes/branches{/branch}","tags_url":"https://api.github.com/repos/erictune/kubernetes/tags","blobs_url":"https://api.github.com/repos/erictune/kubernetes/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/erictune/kubernetes/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/erictune/kubernetes/git/refs{/sha}","trees_url":"https://api.github.com/repos/erictune/kubernetes/git/trees{/sha}","statuses_url":"https://api.github.com/repos/erictune/kubernetes/statuses/{sha}","languages_url":"https://api.github.com/repos/erictune/kubernetes/languages","stargazers_url":"https://api.github.com/repos/erictune/kubernetes/stargazers","contributors_url":"https://api.github.com/repos/erictune/kubernetes/contributors","subscribers_url":"https://api.github.com/repos/erictune/kubernetes/subscribers","subscription_url":"https://api.github.com/repos/erictune/kubernetes/subscription","commits_url":"https://api.github.com/repos/erictune/kubernetes/commits{/sha}","git_commits_url":"https://api.github.com/repos/erictune/kubernetes/git/commits{/sha}","comments_url":"https://api.github.com/repos/erictune/kubernetes/comments{/number}","issue_comment_url":"https://api.github.com/repos/erictune/kubernetes/issues/comments{/number}","contents_url":"https://api.github.com/repos/erictune/kubernetes/contents/{+path}","compare_url":"https://api.github.com/repos/erictune/kubernetes/compare/{base}...{head}","merges_url":"https://api.github.com/repos/erictune/kubernetes/merges","archive_url":"https://api.github.com/repos/erictune/kubernetes/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/erictune/kubernetes/downloads","issues_url":"https://api.github.com/repos/erictune/kubernetes/issues{/number}","pulls_url":"https://api.github.com/repos/erictune/kubernetes/pulls{/number}","milestones_url":"https://api.github.com/repos/erictune/kubernetes/milestones{/number}","notifications_url":"https://api.github.com/repos/erictune/kubernetes/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/erictune/kubernetes/labels{/name}","releases_url":"https://api.github.com/repos/erictune/kubernetes/releases{/id}","created_at":"2014-07-08T21:00:59Z","updated_at":"2015-05-01T23:13:23Z","pushed_at":"2015-12-08T01:40:18Z","git_url":"git://github.com/erictune/kubernetes.git","ssh_url":"git@github.com:erictune/kubernetes.git","clone_url":"https://github.com/erictune/kubernetes.git","svn_url":"https://github.com/erictune/kubernetes","homepage":null,"size":141158,"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":"929ab328656947dc2c7b9fb13933cb9626a5b643","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-08T14:41:24Z","pushed_at":"2015-12-08T16:28:47Z","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":297637,"stargazers_count":11676,"watchers_count":11676,"language":"Go","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":3151,"mirror_url":null,"open_issues_count":2513,"forks":3151,"open_issues":2513,"watchers":11676,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/kubernetes/kubernetes/pulls/17345"},"html":{"href":"https://github.com/kubernetes/kubernetes/pull/17345"},"issue":{"href":"https://api.github.com/repos/kubernetes/kubernetes/issues/17345"},"comments":{"href":"https://api.github.com/repos/kubernetes/kubernetes/issues/17345/comments"},"review_comments":{"href":"https://api.github.com/repos/kubernetes/kubernetes/pulls/17345/comments"},"review_comment":{"href":"https://api.github.com/repos/kubernetes/kubernetes/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/kubernetes/kubernetes/pulls/17345/commits"},"statuses":{"href":"https://api.github.com/repos/kubernetes/kubernetes/statuses/a2a37b39f190993707f78a8a2471ceb22f819a95"}}}}