)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":8122,"name":"Cyril Roelandt","email":"cyril@redhat.com","username":"cyril.roelandt.enovance"},"change_message_id":"451cc037786424ee894cd54db5c80c1f6ece5bd9","unresolved":true,"context_lines":[{"line_number":16,"context_line":"Following are the major changes done in this patch:"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"1) Moving cinder store to a new directory \u0027cinder\u0027 and rename"},{"line_number":19,"context_line":"   \u0027cinder.py\u0027 to \u0027store.py\u0027 (similar to swift)"},{"line_number":20,"context_line":"2) Create new files for nfs and scaleio backends for moving code"},{"line_number":21,"context_line":"   specific to these backends into their own separate file."},{"line_number":22,"context_line":"   This also fixes one bug when using sparse files in nfs and"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":12,"id":"2469e2c6_90a19f67","line":19,"range":{"start_line":19,"start_character":4,"end_line":19,"end_character":13},"updated":"2023-01-11 15:46:41.000000000","message":"For consistency, use \"Move\" instead of \"Moving\" here.","commit_id":"41074fa2f2f50a4b020561f83322076c951e9694"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"fe589d9f3149107b378ff9ed148db757893f5709","unresolved":false,"context_lines":[{"line_number":16,"context_line":"Following are the major changes done in this patch:"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"1) Moving cinder store to a new directory \u0027cinder\u0027 and rename"},{"line_number":19,"context_line":"   \u0027cinder.py\u0027 to \u0027store.py\u0027 (similar to swift)"},{"line_number":20,"context_line":"2) Create new files for nfs and scaleio backends for moving code"},{"line_number":21,"context_line":"   specific to these backends into their own separate file."},{"line_number":22,"context_line":"   This also fixes one bug when using sparse files in nfs and"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":12,"id":"191e28f2_d6cf5aa3","line":19,"range":{"start_line":19,"start_character":4,"end_line":19,"end_character":13},"in_reply_to":"2469e2c6_90a19f67","updated":"2023-01-16 17:52:08.000000000","message":"Done","commit_id":"41074fa2f2f50a4b020561f83322076c951e9694"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":8122,"name":"Cyril Roelandt","email":"cyril@redhat.com","username":"cyril.roelandt.enovance"},"change_message_id":"451cc037786424ee894cd54db5c80c1f6ece5bd9","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":12,"id":"4b8ec2ea_64f7ee7f","updated":"2023-01-11 15:46:41.000000000","message":"A few inlined comments. I like that this passes the tests with minimal changes to them, and this should definitely help making the Cinder driver easier to maintain.","commit_id":"41074fa2f2f50a4b020561f83322076c951e9694"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"fe589d9f3149107b378ff9ed148db757893f5709","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":13,"id":"17277a32_20bccd4c","updated":"2023-01-16 17:52:08.000000000","message":"Thanks Cyril for the review. Addressed the comments and added new UTs.\nInitially i was planning to add the tests separately from the refactor but I think it makes sense here with the new files. Hopefully it won\u0027t be a problem to review the new tests (since they\u0027re just UTs not actual functional changes).","commit_id":"5ac5b852914b0b78b5899a81f341dfe1fc6d5881"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"8aeac108930d8633f04e8649c4375e67fb70fa04","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":14,"id":"0ac1abdd_762525d4","updated":"2023-01-18 10:21:01.000000000","message":"Thanks Abhishek, forgot to update the old files with year change :)","commit_id":"d0733a0f4f0c803ca0333605a21552dba1da931e"},{"author":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"change_message_id":"c98a04ee4a38d7a233b4a05cad8632ff61062c04","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":14,"id":"e1e5f603_fa028c4e","updated":"2023-02-02 13:53:10.000000000","message":"This looks better to me, thank you Rajat!!","commit_id":"d0733a0f4f0c803ca0333605a21552dba1da931e"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"cf55cc065e33850deca10b7604e66cacb40dadff","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":14,"id":"93186b89_af8e8bd6","updated":"2023-02-03 08:16:59.000000000","message":"recheck 869021 is merged now","commit_id":"d0733a0f4f0c803ca0333605a21552dba1da931e"}],"glance_store/_drivers/cinder/__init__.py":[{"author":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"change_message_id":"1427b930657f5fc7448e3664f86fc20e0d885568","unresolved":true,"context_lines":[{"line_number":1,"context_line":"# Copyright 2022 Red Hat, Inc."},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":13,"id":"8ee2ca6c_5195f742","line":1,"range":{"start_line":1,"start_character":15,"end_line":1,"end_character":16},"updated":"2023-01-16 17:53:28.000000000","message":"2023","commit_id":"5ac5b852914b0b78b5899a81f341dfe1fc6d5881"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"8aeac108930d8633f04e8649c4375e67fb70fa04","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2022 Red Hat, Inc."},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":13,"id":"4210f4be_d48f35a8","line":1,"range":{"start_line":1,"start_character":15,"end_line":1,"end_character":16},"in_reply_to":"8ee2ca6c_5195f742","updated":"2023-01-18 10:21:01.000000000","message":"Done","commit_id":"5ac5b852914b0b78b5899a81f341dfe1fc6d5881"}],"glance_store/_drivers/cinder/base.py":[{"author":{"_account_id":8122,"name":"Cyril Roelandt","email":"cyril@redhat.com","username":"cyril.roelandt.enovance"},"change_message_id":"451cc037786424ee894cd54db5c80c1f6ece5bd9","unresolved":true,"context_lines":[{"line_number":23,"context_line":"BASE \u003d \u0027glance_store._drivers.cinder.base.BaseBrickConnectorInterface\u0027"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"_connector_mapping \u003d {"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"    NFS: \u0027glance_store._drivers.cinder.nfs.NfsBrickConnector\u0027,"},{"line_number":28,"context_line":"    SCALEIO: \u0027glance_store._drivers.cinder.scaleio.ScaleIOBrickConnector\u0027,"},{"line_number":29,"context_line":"}"}],"source_content_type":"text/x-python","patch_set":12,"id":"5cfc9ba5_b714790d","line":26,"range":{"start_line":26,"start_character":0,"end_line":26,"end_character":0},"updated":"2023-01-11 15:46:41.000000000","message":"Drop the empty line.","commit_id":"41074fa2f2f50a4b020561f83322076c951e9694"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"fe589d9f3149107b378ff9ed148db757893f5709","unresolved":false,"context_lines":[{"line_number":23,"context_line":"BASE \u003d \u0027glance_store._drivers.cinder.base.BaseBrickConnectorInterface\u0027"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"_connector_mapping \u003d {"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"    NFS: \u0027glance_store._drivers.cinder.nfs.NfsBrickConnector\u0027,"},{"line_number":28,"context_line":"    SCALEIO: \u0027glance_store._drivers.cinder.scaleio.ScaleIOBrickConnector\u0027,"},{"line_number":29,"context_line":"}"}],"source_content_type":"text/x-python","patch_set":12,"id":"50b0c07e_069dae06","line":26,"range":{"start_line":26,"start_character":0,"end_line":26,"end_character":0},"in_reply_to":"5cfc9ba5_b714790d","updated":"2023-01-16 17:52:08.000000000","message":"Done","commit_id":"41074fa2f2f50a4b020561f83322076c951e9694"},{"author":{"_account_id":8122,"name":"Cyril Roelandt","email":"cyril@redhat.com","username":"cyril.roelandt.enovance"},"change_message_id":"451cc037786424ee894cd54db5c80c1f6ece5bd9","unresolved":true,"context_lines":[{"line_number":30,"context_line":""},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"def factory(*args, **kwargs):"},{"line_number":33,"context_line":"    connection_info \u003d kwargs.get(\u0027connection_info\u0027)"},{"line_number":34,"context_line":"    protocol \u003d connection_info[\u0027driver_volume_type\u0027]"},{"line_number":35,"context_line":"    connector \u003d _connector_mapping.get(protocol, BASE)"},{"line_number":36,"context_line":"    conn_cls \u003d importutils.import_class(connector)"}],"source_content_type":"text/x-python","patch_set":12,"id":"6805b1e6_5edc9ee6","line":33,"range":{"start_line":33,"start_character":4,"end_line":33,"end_character":19},"updated":"2023-01-11 15:46:41.000000000","message":"\"Factory\" sounds a bit too generic. Couldn\u0027t we rename this to \"create_connection\"?","commit_id":"41074fa2f2f50a4b020561f83322076c951e9694"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"fe589d9f3149107b378ff9ed148db757893f5709","unresolved":true,"context_lines":[{"line_number":30,"context_line":""},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"def factory(*args, **kwargs):"},{"line_number":33,"context_line":"    connection_info \u003d kwargs.get(\u0027connection_info\u0027)"},{"line_number":34,"context_line":"    protocol \u003d connection_info[\u0027driver_volume_type\u0027]"},{"line_number":35,"context_line":"    connector \u003d _connector_mapping.get(protocol, BASE)"},{"line_number":36,"context_line":"    conn_cls \u003d importutils.import_class(connector)"}],"source_content_type":"text/x-python","patch_set":12,"id":"64225409_0c0684b6","line":33,"range":{"start_line":33,"start_character":4,"end_line":33,"end_character":19},"in_reply_to":"6805b1e6_5edc9ee6","updated":"2023-01-16 17:52:08.000000000","message":"The reason for naming this factory is because of the factory method design pattern[1] (the link also has a matching example) that instantiates a class dynamically based on the protocol used.\nThe same convention is used in os-brick[2] and also has the same purpose.\n\"create_connection\" wouldn\u0027t be suitable here since it\u0027s not actually doing anything apart from instantiating the desired connector class like NFS or SCALEIO and returning to the caller.\n\n[1] https://www.geeksforgeeks.org/factory-method-python-design-patterns/\n[2] https://github.com/openstack/os-brick/blob/c9b82241eab324673147a40c494f3996d03136cd/os_brick/initiator/connector.py#L272-L277","commit_id":"41074fa2f2f50a4b020561f83322076c951e9694"},{"author":{"_account_id":8122,"name":"Cyril Roelandt","email":"cyril@redhat.com","username":"cyril.roelandt.enovance"},"change_message_id":"451cc037786424ee894cd54db5c80c1f6ece5bd9","unresolved":true,"context_lines":[{"line_number":37,"context_line":"    return conn_cls(*args, **kwargs)"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"class BaseBrickConnectorInterface(object):"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"    def __init__(self, *args, **kwargs):"},{"line_number":43,"context_line":"        self.connection_info \u003d kwargs.get(\u0027connection_info\u0027)"}],"source_content_type":"text/x-python","patch_set":12,"id":"295b765c_cd699e84","line":40,"range":{"start_line":40,"start_character":0,"end_line":40,"end_character":42},"updated":"2023-01-11 15:46:41.000000000","message":"Drop the empty line.","commit_id":"41074fa2f2f50a4b020561f83322076c951e9694"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"fe589d9f3149107b378ff9ed148db757893f5709","unresolved":false,"context_lines":[{"line_number":37,"context_line":"    return conn_cls(*args, **kwargs)"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"class BaseBrickConnectorInterface(object):"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"    def __init__(self, *args, **kwargs):"},{"line_number":43,"context_line":"        self.connection_info \u003d kwargs.get(\u0027connection_info\u0027)"}],"source_content_type":"text/x-python","patch_set":12,"id":"804663a5_003f116d","line":40,"range":{"start_line":40,"start_character":0,"end_line":40,"end_character":42},"in_reply_to":"295b765c_cd699e84","updated":"2023-01-16 17:52:08.000000000","message":"Done","commit_id":"41074fa2f2f50a4b020561f83322076c951e9694"},{"author":{"_account_id":8122,"name":"Cyril Roelandt","email":"cyril@redhat.com","username":"cyril.roelandt.enovance"},"change_message_id":"451cc037786424ee894cd54db5c80c1f6ece5bd9","unresolved":true,"context_lines":[{"line_number":55,"context_line":"        self.conn.disconnect_volume(self.connection_info, device)"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"    def extend_volume(self):"},{"line_number":58,"context_line":"        pass"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"    def yield_file(self, volume, f):"},{"line_number":61,"context_line":"        return f"}],"source_content_type":"text/x-python","patch_set":12,"id":"0c94d37b_f3dc9bba","line":58,"range":{"start_line":58,"start_character":8,"end_line":58,"end_character":12},"updated":"2023-01-11 15:46:41.000000000","message":"Do we want to \"pass\" or should we raise UnimplementedError here?","commit_id":"41074fa2f2f50a4b020561f83322076c951e9694"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"fe589d9f3149107b378ff9ed148db757893f5709","unresolved":false,"context_lines":[{"line_number":55,"context_line":"        self.conn.disconnect_volume(self.connection_info, device)"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"    def extend_volume(self):"},{"line_number":58,"context_line":"        pass"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"    def yield_file(self, volume, f):"},{"line_number":61,"context_line":"        return f"}],"source_content_type":"text/x-python","patch_set":12,"id":"5fac4987_9a8c1223","line":58,"range":{"start_line":58,"start_character":8,"end_line":58,"end_character":12},"in_reply_to":"0c94d37b_f3dc9bba","updated":"2023-01-16 17:52:08.000000000","message":"The idea was to declare it here and the implementation is added in next patch[1] I will remove it for now to avoid confusion.\n[1] https://review.opendev.org/c/openstack/glance_store/+/868742/9/glance_store/_drivers/cinder/base.py#58","commit_id":"41074fa2f2f50a4b020561f83322076c951e9694"},{"author":{"_account_id":8122,"name":"Cyril Roelandt","email":"cyril@redhat.com","username":"cyril.roelandt.enovance"},"change_message_id":"451cc037786424ee894cd54db5c80c1f6ece5bd9","unresolved":true,"context_lines":[{"line_number":57,"context_line":"    def extend_volume(self):"},{"line_number":58,"context_line":"        pass"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"    def yield_file(self, volume, f):"},{"line_number":61,"context_line":"        return f"}],"source_content_type":"text/x-python","patch_set":12,"id":"d99588d1_f44c2c10","line":60,"range":{"start_line":60,"start_character":19,"end_line":60,"end_character":23},"updated":"2023-01-11 15:46:41.000000000","message":"What is \"f\" here? A file descriptor? It\u0027s not really clear to me what the purpose of this method is, especially since the base implementation is so simple. Maybe add a docstring?","commit_id":"41074fa2f2f50a4b020561f83322076c951e9694"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"fe589d9f3149107b378ff9ed148db757893f5709","unresolved":false,"context_lines":[{"line_number":57,"context_line":"    def extend_volume(self):"},{"line_number":58,"context_line":"        pass"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"    def yield_file(self, volume, f):"},{"line_number":61,"context_line":"        return f"}],"source_content_type":"text/x-python","patch_set":12,"id":"dc8b891c_83663046","line":60,"range":{"start_line":60,"start_character":19,"end_line":60,"end_character":23},"in_reply_to":"d99588d1_f44c2c10","updated":"2023-01-16 17:52:08.000000000","message":"f is file object which os-brick returns and glance uses to write the image into.\nThe reason for implementing this method is because of the scaleio connector.\nwill reframe this for better readability.","commit_id":"41074fa2f2f50a4b020561f83322076c951e9694"},{"author":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"change_message_id":"1427b930657f5fc7448e3664f86fc20e0d885568","unresolved":true,"context_lines":[{"line_number":1,"context_line":"# Copyright 2022 Red Hat, Inc."},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":13,"id":"3106446b_3866c6e7","line":1,"range":{"start_line":1,"start_character":12,"end_line":1,"end_character":16},"updated":"2023-01-16 17:53:28.000000000","message":"2023","commit_id":"5ac5b852914b0b78b5899a81f341dfe1fc6d5881"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"8aeac108930d8633f04e8649c4375e67fb70fa04","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2022 Red Hat, Inc."},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":13,"id":"832c95e2_ff6539ba","line":1,"range":{"start_line":1,"start_character":12,"end_line":1,"end_character":16},"in_reply_to":"3106446b_3866c6e7","updated":"2023-01-18 10:21:01.000000000","message":"Done","commit_id":"5ac5b852914b0b78b5899a81f341dfe1fc6d5881"}],"glance_store/_drivers/cinder/nfs.py":[{"author":{"_account_id":8122,"name":"Cyril Roelandt","email":"cyril@redhat.com","username":"cyril.roelandt.enovance"},"change_message_id":"451cc037786424ee894cd54db5c80c1f6ece5bd9","unresolved":true,"context_lines":[{"line_number":50,"context_line":"        \"\"\""},{"line_number":51,"context_line":"        return os.path.join(self.mount_point_base, self.get_hash_str(share))"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    def get_hash_str(self, base_str):"},{"line_number":54,"context_line":"        \"\"\"Returns string that represents SHA256 hash of base_str (in hex format)."},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"        If base_str is a Unicode string, encode it to UTF-8."}],"source_content_type":"text/x-python","patch_set":12,"id":"3cada3c5_1cb0481f","line":53,"range":{"start_line":53,"start_character":27,"end_line":53,"end_character":35},"updated":"2023-01-11 15:46:41.000000000","message":"This should be a static method, or be moved outside of the class.","commit_id":"41074fa2f2f50a4b020561f83322076c951e9694"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"fe589d9f3149107b378ff9ed148db757893f5709","unresolved":false,"context_lines":[{"line_number":50,"context_line":"        \"\"\""},{"line_number":51,"context_line":"        return os.path.join(self.mount_point_base, self.get_hash_str(share))"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    def get_hash_str(self, base_str):"},{"line_number":54,"context_line":"        \"\"\"Returns string that represents SHA256 hash of base_str (in hex format)."},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"        If base_str is a Unicode string, encode it to UTF-8."}],"source_content_type":"text/x-python","patch_set":12,"id":"f4ba78e9_428345a6","line":53,"range":{"start_line":53,"start_character":27,"end_line":53,"end_character":35},"in_reply_to":"3cada3c5_1cb0481f","updated":"2023-01-16 17:52:08.000000000","message":"Done","commit_id":"41074fa2f2f50a4b020561f83322076c951e9694"},{"author":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"change_message_id":"1427b930657f5fc7448e3664f86fc20e0d885568","unresolved":true,"context_lines":[{"line_number":1,"context_line":"# Copyright 2022 Red Hat, Inc."},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":13,"id":"be7339f6_390c50c6","line":1,"range":{"start_line":1,"start_character":12,"end_line":1,"end_character":16},"updated":"2023-01-16 17:53:28.000000000","message":"2023","commit_id":"5ac5b852914b0b78b5899a81f341dfe1fc6d5881"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"8aeac108930d8633f04e8649c4375e67fb70fa04","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2022 Red Hat, Inc."},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":13,"id":"f0261a6c_196e3d66","line":1,"range":{"start_line":1,"start_character":12,"end_line":1,"end_character":16},"in_reply_to":"be7339f6_390c50c6","updated":"2023-01-18 10:21:01.000000000","message":"Done","commit_id":"5ac5b852914b0b78b5899a81f341dfe1fc6d5881"}],"glance_store/_drivers/cinder/scaleio.py":[{"author":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"change_message_id":"1427b930657f5fc7448e3664f86fc20e0d885568","unresolved":true,"context_lines":[{"line_number":1,"context_line":"# Copyright 2022 Red Hat, Inc."},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":13,"id":"5d16ff5e_a982ae1f","line":1,"range":{"start_line":1,"start_character":11,"end_line":1,"end_character":16},"updated":"2023-01-16 17:53:28.000000000","message":"2023","commit_id":"5ac5b852914b0b78b5899a81f341dfe1fc6d5881"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"8aeac108930d8633f04e8649c4375e67fb70fa04","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2022 Red Hat, Inc."},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":13,"id":"2f301f83_6b3e30f8","line":1,"range":{"start_line":1,"start_character":11,"end_line":1,"end_character":16},"in_reply_to":"5d16ff5e_a982ae1f","updated":"2023-01-18 10:21:01.000000000","message":"Done","commit_id":"5ac5b852914b0b78b5899a81f341dfe1fc6d5881"}]}
