{"action":"created","issue":{"url":"https://api.github.com/repos/openshift/origin/issues/19468","repository_url":"https://api.github.com/repos/openshift/origin","labels_url":"https://api.github.com/repos/openshift/origin/issues/19468/labels{/name}","comments_url":"https://api.github.com/repos/openshift/origin/issues/19468/comments","events_url":"https://api.github.com/repos/openshift/origin/issues/19468/events","html_url":"https://github.com/openshift/origin/pull/19468","id":316712874,"number":19468,"title":"[WIP] image-pruner: prune images in their own jobs","user":{"login":"miminar","id":1478803,"avatar_url":"https://avatars2.githubusercontent.com/u/1478803?v=4","gravatar_id":"","url":"https://api.github.com/users/miminar","html_url":"https://github.com/miminar","followers_url":"https://api.github.com/users/miminar/followers","following_url":"https://api.github.com/users/miminar/following{/other_user}","gists_url":"https://api.github.com/users/miminar/gists{/gist_id}","starred_url":"https://api.github.com/users/miminar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/miminar/subscriptions","organizations_url":"https://api.github.com/users/miminar/orgs","repos_url":"https://api.github.com/users/miminar/repos","events_url":"https://api.github.com/users/miminar/events{/privacy}","received_events_url":"https://api.github.com/users/miminar/received_events","type":"User","site_admin":false},"labels":[{"id":223051294,"url":"https://api.github.com/repos/openshift/origin/labels/approved","name":"approved","color":"0ffa16","default":false},{"id":686389978,"url":"https://api.github.com/repos/openshift/origin/labels/do-not-merge/work-in-progress","name":"do-not-merge/work-in-progress","color":"e11d21","default":false},{"id":640547849,"url":"https://api.github.com/repos/openshift/origin/labels/size/XS","name":"size/XS","color":"009900","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":6,"created_at":"2018-04-23T08:33:41Z","updated_at":"2018-04-26T13:15:15Z","closed_at":null,"author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/openshift/origin/pulls/19468","html_url":"https://github.com/openshift/origin/pull/19468","diff_url":"https://github.com/openshift/origin/pull/19468.diff","patch_url":"https://github.com/openshift/origin/pull/19468.patch"},"body":"Instead of pruning in phases:\n\n    all streams -> all layers -> all blobs -> manifests -> images\n\nPrune individual images in parallel jobs:\n\n    all streams -> parallel [\n       image1's layers -> image1's blobs -> ... -> image1,\n       image2's layers -> image2's blobs -> ... -> image2,\n       ...\n    ]\n\nA failure in streams prune phase is not fatal anymore.\n\nResolves: [rhbz#1567657](https://bugzilla.redhat.com/show_bug.cgi?id=1567657)\n\nAdditionally, previously manifest blobs weren't removed from the blob store. This PR removes the manifests of deleted images from blob store as well.\n\n**Remarks:**\n- parallel execution makes it a bit more complicated\n- in order to make it more legible and reviewable, the parallelism with the handling of blocked images could be moved to a follow-up PR\n- this doesn't aim to make the image pruning 100% safe - it just attempts to make it error tolerable while maintaining as much consistency as possible\n\n**TODOs:**\n- [ ] - pretty print result summary\n- [x] - avoid potential races caused by using shared API clients by intantiating them separately for each worker\n- [x] - resolve races in tests where the counters are shared between go-routines\n- [ ] - detect changes to image streams and image creations/deletions and update graph accordingly on the fly to prevent from"},"comment":{"url":"https://api.github.com/repos/openshift/origin/issues/comments/384636743","html_url":"https://github.com/openshift/origin/pull/19468#issuecomment-384636743","issue_url":"https://api.github.com/repos/openshift/origin/issues/19468","id":384636743,"user":{"login":"openshift-ci-robot","id":30189103,"avatar_url":"https://avatars1.githubusercontent.com/u/30189103?v=4","gravatar_id":"","url":"https://api.github.com/users/openshift-ci-robot","html_url":"https://github.com/openshift-ci-robot","followers_url":"https://api.github.com/users/openshift-ci-robot/followers","following_url":"https://api.github.com/users/openshift-ci-robot/following{/other_user}","gists_url":"https://api.github.com/users/openshift-ci-robot/gists{/gist_id}","starred_url":"https://api.github.com/users/openshift-ci-robot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/openshift-ci-robot/subscriptions","organizations_url":"https://api.github.com/users/openshift-ci-robot/orgs","repos_url":"https://api.github.com/users/openshift-ci-robot/repos","events_url":"https://api.github.com/users/openshift-ci-robot/events{/privacy}","received_events_url":"https://api.github.com/users/openshift-ci-robot/received_events","type":"User","site_admin":false},"created_at":"2018-04-26T13:15:15Z","updated_at":"2018-04-26T13:15:15Z","author_association":"NONE","body":"[APPROVALNOTIFIER] This PR is **NOT APPROVED**\n\nThis pull-request has been approved by: *<a href=\"https://github.com/openshift/origin/pull/19468#\" title=\"Author self-approved\">miminar</a>*\nTo fully approve this pull request, please assign additional approvers.\nWe suggest the following additional approver: **enj**\n\nAssign the PR to them by writing `/assign @enj` in a comment when ready.\n\nThe full list of commands accepted by this bot can be found [here](https://go.k8s.io/bot-commands).\n\nThe pull request process is described [here](https://git.k8s.io/community/contributors/guide/owners.md#the-code-review-process)\n\n<details open>\nNeeds approval from an approver in each of these files:\n\n- **[pkg/oc/OWNERS](https://github.com/openshift/origin/blob/master/pkg/oc/OWNERS)**\n\nApprovers can indicate their approval by writing `/approve` in a comment\nApprovers can cancel approval by writing `/approve cancel` in a comment\n</details>\n<!-- META={\"approvers\":[\"enj\"]} -->"}}
{"actor":{"display_login":"openshift-ci-robot"}}