)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":8759,"name":"Arnaud Legendre","email":"arnaudleg@gmail.com","username":"arnaud"},"change_message_id":"58f8f689c740f4d26d1c15c508dc30725ce1a564","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Nassim Babaci \u003cnassim.babaci@cloudwatt.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2014-01-20 18:06:48 +0100"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"fix swift_store_admin_tenant behavious in multi tenant mode"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"* swift_store_admin_tenant option applies to both read and write acls."},{"line_number":10,"context_line":"* format the acls string correclty (remove leading \u0027:*\u0027)"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"AAAAUH%2F%2Bseg%3D","line":7,"updated":"2014-01-23 03:35:11.000000000","message":"do you mean behavior?","commit_id":"e5a2e0449bd3bd7c3c749f8d58254fb072a7135e"},{"author":{"_account_id":5202,"name":"Erno Kuvaja","email":"jokke@usr.fi","username":"jokke"},"change_message_id":"2e8a5025cc0c0963863845b261633fea085df577","unresolved":false,"context_lines":[{"line_number":7,"context_line":"fix swift_store_admin_tenant behavior in multi tenant mode"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"* swift_store_admin_tenant option applies to both read and write acls."},{"line_number":10,"context_line":"* format the acls string correctly (remove trailing \u0027:*\u0027)"},{"line_number":11,"context_line":"* add unittest to check admin_tenant list logic"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Closes-Bug: 1309597"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":9,"id":"1ae5cdf2_1ad33e60","line":10,"updated":"2014-06-24 10:53:25.000000000","message":"But the change in https://review.openstack.org/#/c/67875/9/glance/store/swift.py lines #720 \u0026 #726 actually adds \":*\" into the tenant for both read_tenants and write_tenants.","commit_id":"b7ba1ddc3106272e89c9ad0c841d1aa3a0b03cf6"},{"author":{"_account_id":9910,"name":"Nassim Babaci","email":"grindizer@gmail.com","username":"n4b5"},"change_message_id":"e09fbac00a24ac40ba3f03c723423125e439e79d","unresolved":false,"context_lines":[{"line_number":7,"context_line":"fix swift_store_admin_tenant behavior in multi tenant mode"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"* swift_store_admin_tenant option applies to both read and write acls."},{"line_number":10,"context_line":"* format the acls string correctly (remove trailing \u0027:*\u0027)"},{"line_number":11,"context_line":"* add unittest to check admin_tenant list logic"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Closes-Bug: 1309597"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":9,"id":"1ae5cdf2_507f6766","line":10,"in_reply_to":"1ae5cdf2_1ad33e60","updated":"2014-06-24 11:44:37.000000000","message":"yes, we add \":*\" for read and write tenants list, but the error was that we also add it to the value of \"swift_store_admin_tenant\", where this option is supposed to contain an acl value.\n\nyou have an example here: http://paste.openstack.org/show/61570/\n\nthe result is that the acls set on the container is not in the right format.","commit_id":"b7ba1ddc3106272e89c9ad0c841d1aa3a0b03cf6"}],"glance/store/__init__.py":[{"author":{"_account_id":6484,"name":"Feilong Wang","email":"hustemb@gmail.com","username":"flwang"},"change_message_id":"32d3261da471170cdf4947e52c131b83c0796135","unresolved":false,"context_lines":[{"line_number":415,"context_line":"        read_tenants \u003d []"},{"line_number":416,"context_line":"    if write_tenants is None:"},{"line_number":417,"context_line":"        write_tenants \u003d []"},{"line_number":418,"context_line":""},{"line_number":419,"context_line":"    loc \u003d location.get_location_from_uri(location_uri)"},{"line_number":420,"context_line":"    scheme \u003d get_store_from_location(location_uri)"},{"line_number":421,"context_line":"    store \u003d get_store_from_scheme(context, scheme, loc)"}],"source_content_type":"text/x-python","patch_set":10,"id":"1ae5cdf2_aeb590ee","side":"PARENT","line":418,"updated":"2014-06-25 03:00:04.000000000","message":"Let\u0027s rollback this given it\u0027s not related to the change, ok?","commit_id":"95fc85d5bfb8809e458823bd4adaa76e7afbb645"}],"glance/store/swift.py":[{"author":{"_account_id":6484,"name":"Feilong Wang","email":"hustemb@gmail.com","username":"flwang"},"change_message_id":"32d3261da471170cdf4947e52c131b83c0796135","unresolved":false,"context_lines":[{"line_number":693,"context_line":"            headers[\u0027X-Container-Write\u0027] \u003d \u0027,\u0027.join(\u0027%s:*\u0027 % i"},{"line_number":694,"context_line":"                                                    for i in write_tenants)"},{"line_number":695,"context_line":"        else:"},{"line_number":696,"context_line":"            headers[\u0027X-Container-Write\u0027] \u003d \u0027\u0027"},{"line_number":697,"context_line":""},{"line_number":698,"context_line":"        try:"},{"line_number":699,"context_line":"            connection.post_container(location.container, headers\u003dheaders)"}],"source_content_type":"text/x-python","patch_set":10,"id":"1ae5cdf2_0ea8441f","side":"PARENT","line":696,"updated":"2014-06-25 03:00:04.000000000","message":"Seems we\u0027re removing the headers[\u0027X-Container-Read\u0027] \u003d \u0027\u0027 and headers[\u0027X-Container-Write\u0027] \u003d \u0027\u0027, so are you sure it\u0027s harmless?","commit_id":"95fc85d5bfb8809e458823bd4adaa76e7afbb645"},{"author":{"_account_id":6484,"name":"Feilong Wang","email":"hustemb@gmail.com","username":"flwang"},"change_message_id":"32d3261da471170cdf4947e52c131b83c0796135","unresolved":false,"context_lines":[{"line_number":712,"context_line":"            auth_version\u003d\u00272\u0027, snet\u003dself.snet, insecure\u003dself.insecure,"},{"line_number":713,"context_line":"            ssl_compression\u003dself.ssl_compression)"},{"line_number":714,"context_line":""},{"line_number":715,"context_line":"    @staticmethod"},{"line_number":716,"context_line":"    def get_acls_for_read(tenants, extra_acl, is_public):"},{"line_number":717,"context_line":"        if is_public:"},{"line_number":718,"context_line":"            return \".r:*,.rlistings\""}],"source_content_type":"text/x-python","patch_set":10,"id":"1ae5cdf2_8e6b74f0","line":715,"updated":"2014-06-25 03:00:04.000000000","message":"why use the static method? Am I missing anything?","commit_id":"6e8b7dfb651cf678e8409e62a4f14423b47ec09c"},{"author":{"_account_id":6484,"name":"Feilong Wang","email":"hustemb@gmail.com","username":"flwang"},"change_message_id":"32d3261da471170cdf4947e52c131b83c0796135","unresolved":false,"context_lines":[{"line_number":722,"context_line":"        return \u0027,\u0027.join(read_acl)"},{"line_number":723,"context_line":""},{"line_number":724,"context_line":"    @staticmethod"},{"line_number":725,"context_line":"    def get_acls_for_write(tenants, extra_acl):"},{"line_number":726,"context_line":"        write_acl \u003d [\u0027{0}:*\u0027.format(tenant) for tenant in tenants]"},{"line_number":727,"context_line":"        write_acl.extend(extra_acl)"},{"line_number":728,"context_line":"        return \u0027,\u0027.join(write_acl)"}],"source_content_type":"text/x-python","patch_set":10,"id":"1ae5cdf2_ee6f98f8","line":725,"updated":"2014-06-25 03:00:04.000000000","message":"How about just combine these two methods with one? maybe named build_acl(), given they are sharing most of code? Just think aloud, not a blocker.","commit_id":"6e8b7dfb651cf678e8409e62a4f14423b47ec09c"}],"glance/tests/unit/test_swift_store.py":[{"author":{"_account_id":8759,"name":"Arnaud Legendre","email":"arnaudleg@gmail.com","username":"arnaud"},"change_message_id":"58f8f689c740f4d26d1c15c508dc30725ce1a564","unresolved":false,"context_lines":[{"line_number":645,"context_line":"        self.config(swift_store_multi_tenant\u003dTrue)"},{"line_number":646,"context_line":"        context \u003d glance.context.RequestContext()"},{"line_number":647,"context_line":"        store \u003d Store(context)"},{"line_number":648,"context_line":"        store.admin_tenant \u003d [\u0027admin_tenant:admin_user\u0027]"},{"line_number":649,"context_line":"        uri \u003d \"swift+http://storeurl/glance/%s\" % FAKE_UUID"},{"line_number":650,"context_line":"        loc \u003d get_location_from_uri(uri)"},{"line_number":651,"context_line":"        store.admin_tenants \u003d [\u0027admin_tenant:admin_user\u0027]"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAUH%2F%2Bsds%3D","line":648,"updated":"2014-01-23 03:35:11.000000000","message":"why do you need this line?","commit_id":"e5a2e0449bd3bd7c3c749f8d58254fb072a7135e"}]}
