)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"f00b5a236603e304b33862061807c41ba4ab1230","unresolved":false,"context_lines":[{"line_number":50,"context_line":"* When pushing an image into the registry that shadows docker.io,"},{"line_number":51,"context_line":"  use a command like:"},{"line_number":52,"context_line":"    skopeo copy containers-storage:docker.io/test/registry \\"},{"line_number":53,"context_line":"      docker://localhost:9000/docker.io/test/registry"},{"line_number":54,"context_line":"* Then a \"podman pull docker.io/test/registry\" will pull the"},{"line_number":55,"context_line":"  image as expected."},{"line_number":56,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"3fa7e38b_e11a28c4","line":53,"updated":"2019-10-10 22:10:06.000000000","message":"Is it shadowed if you have to explictly copy the content into the registry beforehand? I thought the zuul-registry was meant to handle 404s by pulling the data from upstream (and that was what is meant by shadowing).","commit_id":"a2dcc167a292ce8ad83a6890a749004b5b298c64"},{"author":{"_account_id":1,"name":"James E. Blair","email":"jim@acmegating.com","username":"corvus"},"change_message_id":"81ace764c379723dea5de22bcea103cdb661725b","unresolved":false,"context_lines":[{"line_number":50,"context_line":"* When pushing an image into the registry that shadows docker.io,"},{"line_number":51,"context_line":"  use a command like:"},{"line_number":52,"context_line":"    skopeo copy containers-storage:docker.io/test/registry \\"},{"line_number":53,"context_line":"      docker://localhost:9000/docker.io/test/registry"},{"line_number":54,"context_line":"* Then a \"podman pull docker.io/test/registry\" will pull the"},{"line_number":55,"context_line":"  image as expected."},{"line_number":56,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"3fa7e38b_21afe02a","line":53,"updated":"2019-10-10 22:27:09.000000000","message":"We copy the images that we want to override (eg, speculative images for upstream dependencies) into the buildset registry (which is what this is in this configuration).  Since we have set aside the MITM approach, we no longer need to act as a proxy, we can rely on the mirror fallback sequence.  We just make the buildset registry the first mirror.","commit_id":"a2dcc167a292ce8ad83a6890a749004b5b298c64"}],"zuul_registry/main.py":[{"author":{"_account_id":1,"name":"James E. Blair","email":"jim@acmegating.com","username":"corvus"},"change_message_id":"c510e6de6bd22decd3a8b87070469c7ef26fcf5e","unresolved":false,"context_lines":[{"line_number":80,"context_line":"        level \u003d None"},{"line_number":81,"context_line":"        if not isinstance(scope, list):"},{"line_number":82,"context_line":"            scope \u003d scope.split(\u0027 \u0027)"},{"line_number":83,"context_line":"        for resource_scope in scope:"},{"line_number":84,"context_line":"            parts \u003d resource_scope.split(\u0027:\u0027)"},{"line_number":85,"context_line":"            if parts[0] \u003d\u003d \u0027repository\u0027 and \u0027push\u0027 in parts[2]:"},{"line_number":86,"context_line":"                level \u003d self.WRITE"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa7e38b_c9589132","line":83,"updated":"2019-10-09 16:20:49.000000000","message":"This is an intentional bugfix I forgot to mention in the commit message.","commit_id":"7022d202b4ad3222b812766abc625595130fb8f5"},{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"571452a338bc846e6af073e2b59e7851be89a1cf","unresolved":false,"context_lines":[{"line_number":150,"context_line":"        if not self.namespaced:"},{"line_number":151,"context_line":"            return (self.DEFAULT_NAMESPACE, repository)"},{"line_number":152,"context_line":"        parts \u003d repository.split(\u0027/\u0027)"},{"line_number":153,"context_line":"        return (parts[0], \u0027/\u0027.join(parts[1:]))"},{"line_number":154,"context_line":""},{"line_number":155,"context_line":"    def not_found(self):"},{"line_number":156,"context_line":"        raise cherrypy.HTTPError(404)"}],"source_content_type":"text/x-python","patch_set":4,"id":"3fa7e38b_61471879","line":153,"updated":"2019-10-10 22:33:27.000000000","message":"Nit this could be:\n\n  return repository.split(\u0027/\u0027, 1)","commit_id":"a2dcc167a292ce8ad83a6890a749004b5b298c64"}]}
