)]}'
{"cinder/volume/drivers/lenovo/lenovo_client.py":[{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"dcbbbc17f1da32aa0581aeb7121d084298426dce","unresolved":false,"context_lines":[{"line_number":14,"context_line":"#    under the License."},{"line_number":15,"context_line":"#"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"from cinder.volume.drivers.stx.client import STXClient"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"class LenovoClient(STXClient):"}],"source_content_type":"text/x-python","patch_set":15,"id":"7faddb67_71914d9a","line":17,"range":{"start_line":17,"start_character":45,"end_line":17,"end_character":54},"updated":"2019-08-14 14:04:18.000000000","message":"Don\u0027t import classes directly, only modules.","commit_id":"1e456ea750ea4b28e073ecd35db15c0fec8de918"},{"author":{"_account_id":17042,"name":"Chris M","email":"cinder@tristero.net","username":"pots"},"change_message_id":"7d224231fae3a865cfc34f5ac36e5140beee90c2","unresolved":false,"context_lines":[{"line_number":14,"context_line":"#    under the License."},{"line_number":15,"context_line":"#"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"from cinder.volume.drivers.stx.client import STXClient"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"class LenovoClient(STXClient):"}],"source_content_type":"text/x-python","patch_set":15,"id":"7faddb67_cbbdbeb1","line":17,"range":{"start_line":17,"start_character":45,"end_line":17,"end_character":54},"in_reply_to":"7faddb67_71914d9a","updated":"2019-08-17 17:15:33.000000000","message":"Done.","commit_id":"1e456ea750ea4b28e073ecd35db15c0fec8de918"}],"cinder/volume/drivers/lenovo/lenovo_common.py":[{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"dcbbbc17f1da32aa0581aeb7121d084298426dce","unresolved":false,"context_lines":[{"line_number":18,"context_line":""},{"line_number":19,"context_line":"from cinder.volume import configuration"},{"line_number":20,"context_line":"from cinder.volume.drivers.lenovo import lenovo_client"},{"line_number":21,"context_line":"from cinder.volume.drivers.stx.common import STXCommon"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"common_opts \u003d ["},{"line_number":24,"context_line":"    cfg.StrOpt(\u0027lenovo_backend_name\u0027,"}],"source_content_type":"text/x-python","patch_set":15,"id":"7faddb67_11901995","line":21,"updated":"2019-08-14 14:04:18.000000000","message":"Import module.","commit_id":"1e456ea750ea4b28e073ecd35db15c0fec8de918"},{"author":{"_account_id":17042,"name":"Chris M","email":"cinder@tristero.net","username":"pots"},"change_message_id":"7d224231fae3a865cfc34f5ac36e5140beee90c2","unresolved":false,"context_lines":[{"line_number":18,"context_line":""},{"line_number":19,"context_line":"from cinder.volume import configuration"},{"line_number":20,"context_line":"from cinder.volume.drivers.lenovo import lenovo_client"},{"line_number":21,"context_line":"from cinder.volume.drivers.stx.common import STXCommon"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"common_opts \u003d ["},{"line_number":24,"context_line":"    cfg.StrOpt(\u0027lenovo_backend_name\u0027,"}],"source_content_type":"text/x-python","patch_set":15,"id":"7faddb67_2bad7283","line":21,"in_reply_to":"7faddb67_11901995","updated":"2019-08-17 17:15:33.000000000","message":"Done","commit_id":"1e456ea750ea4b28e073ecd35db15c0fec8de918"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"002567353782d769a65b5926481241af6d90cccb","unresolved":false,"context_lines":[{"line_number":32,"context_line":"               choices\u003d[\u0027http\u0027, \u0027https\u0027],"},{"line_number":33,"context_line":"               default\u003d\u0027https\u0027,"},{"line_number":34,"context_line":"               help\u003d\"Lenovo api interface protocol.\"),"},{"line_number":35,"context_line":"    cfg.BoolOpt(\u0027lenovo_verify_certificate\u0027,"},{"line_number":36,"context_line":"                default\u003dFalse,"},{"line_number":37,"context_line":"                help\u003d\"Whether to verify Lenovo array SSL certificate.\"),"},{"line_number":38,"context_line":"    cfg.StrOpt(\u0027lenovo_verify_certificate_path\u0027,"},{"line_number":39,"context_line":"               help\u003d\"Lenovo array SSL certificate path.\")"},{"line_number":40,"context_line":"]"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"iscsi_opts \u003d ["}],"source_content_type":"text/x-python","patch_set":15,"id":"7faddb67_31fc35b4","line":39,"range":{"start_line":35,"start_character":0,"end_line":39,"end_character":57},"updated":"2019-08-14 14:10:45.000000000","message":"I think these should be deprecated and the existing common config opts should be used instead. Then we can remove these redundant options in U.","commit_id":"1e456ea750ea4b28e073ecd35db15c0fec8de918"},{"author":{"_account_id":17042,"name":"Chris M","email":"cinder@tristero.net","username":"pots"},"change_message_id":"7d224231fae3a865cfc34f5ac36e5140beee90c2","unresolved":false,"context_lines":[{"line_number":32,"context_line":"               choices\u003d[\u0027http\u0027, \u0027https\u0027],"},{"line_number":33,"context_line":"               default\u003d\u0027https\u0027,"},{"line_number":34,"context_line":"               help\u003d\"Lenovo api interface protocol.\"),"},{"line_number":35,"context_line":"    cfg.BoolOpt(\u0027lenovo_verify_certificate\u0027,"},{"line_number":36,"context_line":"                default\u003dFalse,"},{"line_number":37,"context_line":"                help\u003d\"Whether to verify Lenovo array SSL certificate.\"),"},{"line_number":38,"context_line":"    cfg.StrOpt(\u0027lenovo_verify_certificate_path\u0027,"},{"line_number":39,"context_line":"               help\u003d\"Lenovo array SSL certificate path.\")"},{"line_number":40,"context_line":"]"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"iscsi_opts \u003d ["}],"source_content_type":"text/x-python","patch_set":15,"id":"7faddb67_0bc8b652","line":39,"range":{"start_line":35,"start_character":0,"end_line":39,"end_character":57},"in_reply_to":"7faddb67_31fc35b4","updated":"2019-08-17 17:15:33.000000000","message":"Done.","commit_id":"1e456ea750ea4b28e073ecd35db15c0fec8de918"}],"cinder/volume/drivers/lenovo/lenovo_fc.py":[{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"dcbbbc17f1da32aa0581aeb7121d084298426dce","unresolved":false,"context_lines":[{"line_number":17,"context_line":""},{"line_number":18,"context_line":"from cinder import interface"},{"line_number":19,"context_line":"from cinder.volume.drivers.lenovo import lenovo_common"},{"line_number":20,"context_line":"from cinder.volume.drivers.stx.fc import STXFCDriver"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"@interface.volumedriver"}],"source_content_type":"text/x-python","patch_set":15,"id":"7faddb67_318bd568","line":20,"updated":"2019-08-14 14:04:18.000000000","message":"Same.","commit_id":"1e456ea750ea4b28e073ecd35db15c0fec8de918"}],"cinder/volume/drivers/stx/common.py":[{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"365109c1a11555e6c15a0db56d110b1f1d95479c","unresolved":false,"context_lines":[{"line_number":36,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"common_opts \u003d ["},{"line_number":39,"context_line":"    cfg.StrOpt(\u0027seagate_backend_name\u0027,"},{"line_number":40,"context_line":"               default\u003d\u0027A\u0027,"},{"line_number":41,"context_line":"               help\u003d\"Pool or vdisk name to use for volume creation.\"),"},{"line_number":42,"context_line":"    cfg.StrOpt(\u0027seagate_backend_type\u0027,"}],"source_content_type":"text/x-python","patch_set":15,"id":"7faddb67_f1069dcd","line":39,"updated":"2019-08-14 14:09:39.000000000","message":"Why is this needed? There is already a backend name set.","commit_id":"1e456ea750ea4b28e073ecd35db15c0fec8de918"},{"author":{"_account_id":17042,"name":"Chris M","email":"cinder@tristero.net","username":"pots"},"change_message_id":"7d224231fae3a865cfc34f5ac36e5140beee90c2","unresolved":false,"context_lines":[{"line_number":36,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"common_opts \u003d ["},{"line_number":39,"context_line":"    cfg.StrOpt(\u0027seagate_backend_name\u0027,"},{"line_number":40,"context_line":"               default\u003d\u0027A\u0027,"},{"line_number":41,"context_line":"               help\u003d\"Pool or vdisk name to use for volume creation.\"),"},{"line_number":42,"context_line":"    cfg.StrOpt(\u0027seagate_backend_type\u0027,"}],"source_content_type":"text/x-python","patch_set":15,"id":"7faddb67_dfd12759","line":39,"in_reply_to":"7faddb67_f1069dcd","updated":"2019-08-17 17:15:33.000000000","message":"This option names the storage pool on the array that will be used by the Cinder backend. It\u0027s been changed to \u0027seagate_pool_name\u0027 for this driver, and a similar change was made to the hpmsa and lenovo drivers where the old name is deprecated.","commit_id":"1e456ea750ea4b28e073ecd35db15c0fec8de918"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"326d03e5d6b28c48e3a3dbc9653542a0f6a89ad2","unresolved":false,"context_lines":[{"line_number":47,"context_line":"               choices\u003d[\u0027http\u0027, \u0027https\u0027],"},{"line_number":48,"context_line":"               default\u003d\u0027https\u0027,"},{"line_number":49,"context_line":"               help\u003d\"SEAGATE API interface protocol.\"),"},{"line_number":50,"context_line":"    cfg.BoolOpt(\u0027seagate_verify_certificate\u0027,"},{"line_number":51,"context_line":"                default\u003dFalse,"},{"line_number":52,"context_line":"                help\u003d\"Whether to verify SEAGATE array SSL certificate.\"),"},{"line_number":53,"context_line":"    cfg.StrOpt(\u0027seagate_verify_certificate_path\u0027,"},{"line_number":54,"context_line":"               help\u003d\"Seagate array SSL certificate path.\"),"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"]"},{"line_number":57,"context_line":""}],"source_content_type":"text/x-python","patch_set":15,"id":"7faddb67_b142650e","line":54,"range":{"start_line":50,"start_character":0,"end_line":54,"end_character":59},"updated":"2019-08-14 14:07:43.000000000","message":"These should use existing common options:\n\nhttps://github.com/openstack/cinder/blob/dff0f7b2c1ce50d9929321f65f1ab290f2d042a9/cinder/volume/driver.py#L143","commit_id":"1e456ea750ea4b28e073ecd35db15c0fec8de918"},{"author":{"_account_id":17042,"name":"Chris M","email":"cinder@tristero.net","username":"pots"},"change_message_id":"7d224231fae3a865cfc34f5ac36e5140beee90c2","unresolved":false,"context_lines":[{"line_number":47,"context_line":"               choices\u003d[\u0027http\u0027, \u0027https\u0027],"},{"line_number":48,"context_line":"               default\u003d\u0027https\u0027,"},{"line_number":49,"context_line":"               help\u003d\"SEAGATE API interface protocol.\"),"},{"line_number":50,"context_line":"    cfg.BoolOpt(\u0027seagate_verify_certificate\u0027,"},{"line_number":51,"context_line":"                default\u003dFalse,"},{"line_number":52,"context_line":"                help\u003d\"Whether to verify SEAGATE array SSL certificate.\"),"},{"line_number":53,"context_line":"    cfg.StrOpt(\u0027seagate_verify_certificate_path\u0027,"},{"line_number":54,"context_line":"               help\u003d\"Seagate array SSL certificate path.\"),"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"]"},{"line_number":57,"context_line":""}],"source_content_type":"text/x-python","patch_set":15,"id":"7faddb67_6b8e0a28","line":54,"range":{"start_line":50,"start_character":0,"end_line":54,"end_character":59},"in_reply_to":"7faddb67_b142650e","updated":"2019-08-17 17:15:33.000000000","message":"As you suggested, the driver now accepts both, with the old options marked deprecated.  Also changed the lenovo and hpmsa drivers, added release notes and updated the configuration guide.","commit_id":"1e456ea750ea4b28e073ecd35db15c0fec8de918"}],"cinder/volume/drivers/stx/iscsi.py":[{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"365109c1a11555e6c15a0db56d110b1f1d95479c","unresolved":false,"context_lines":[{"line_number":158,"context_line":"        if type(connector) \u003d\u003d dict and \u0027initiator\u0027 in connector:"},{"line_number":159,"context_line":"            # multiattach volumes cannot be unmapped here, but will"},{"line_number":160,"context_line":"            # be implicity unmapped when the volume is deleted."},{"line_number":161,"context_line":"            if not volume.get(\u0027multiattach\u0027, False):"},{"line_number":162,"context_line":"                self.common.unmap_volume(volume, connector, \u0027initiator\u0027)"},{"line_number":163,"context_line":""},{"line_number":164,"context_line":"    def get_volume_stats(self, refresh\u003dFalse):"}],"source_content_type":"text/x-python","patch_set":15,"id":"7faddb67_316755ba","line":161,"range":{"start_line":161,"start_character":43,"end_line":161,"end_character":50},"updated":"2019-08-14 14:09:39.000000000","message":"Trivial thing, but this is not necessary since if there is no \"multiattach\" key, the result with be a False evaluation.","commit_id":"1e456ea750ea4b28e073ecd35db15c0fec8de918"}],"doc/source/configuration/block-storage/drivers/seagate-driver.rst":[{"author":{"_account_id":7198,"name":"Jay Bryant","email":"jungleboyj@electronicjungle.net","username":"jsbryant"},"change_message_id":"cfb0e6b185b84be6c17c213c6bb9299ceab38f65","unresolved":false,"context_lines":[{"line_number":119,"context_line":""},{"line_number":120,"context_line":"#. If any ``volume_backend_name`` value refers to a vdisk rather than a"},{"line_number":121,"context_line":"   virtual pool, add an additional statement ``seagate_backend_type \u003d linear``"},{"line_number":122,"context_line":"   to that back end entry."},{"line_number":123,"context_line":""},{"line_number":124,"context_line":"#. If HTTPS is not enabled in the array, include ``seagate_api_protocol \u003d http``"},{"line_number":125,"context_line":"   in each of the back-end definitions."}],"source_content_type":"text/x-rst","patch_set":1,"id":"7faddb67_cf2367a6","line":122,"range":{"start_line":122,"start_character":11,"end_line":122,"end_character":19},"updated":"2019-07-17 18:58:44.000000000","message":"back-end","commit_id":"cf5c205af2ebc6769eb586a9e3cb6d136e34dad7"},{"author":{"_account_id":7198,"name":"Jay Bryant","email":"jungleboyj@electronicjungle.net","username":"jsbryant"},"change_message_id":"cfb0e6b185b84be6c17c213c6bb9299ceab38f65","unresolved":false,"context_lines":[{"line_number":130,"context_line":"   CA\\_BUNDLE file containing CAs other than those in the default list."},{"line_number":131,"context_line":""},{"line_number":132,"context_line":"#. Modify the ``[DEFAULT]`` section of the ``cinder.conf`` file to add an"},{"line_number":133,"context_line":"   ``enabled_back-ends`` parameter specifying the backend entries you added,"},{"line_number":134,"context_line":"   and a ``default_volume_type`` parameter specifying the name of a volume type"},{"line_number":135,"context_line":"   that you will create in the next step."},{"line_number":136,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"7faddb67_af55cbfb","line":133,"range":{"start_line":133,"start_character":4,"end_line":133,"end_character":22},"updated":"2019-07-17 18:58:44.000000000","message":"enabled_backends","commit_id":"cf5c205af2ebc6769eb586a9e3cb6d136e34dad7"}],"releasenotes/notes/seagate-new-driver-d420fad549e9045f.yaml":[{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"c5f839788addadffdd3e2506768a13c78016682a","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - New Cinder driver for Seagate FC and iSCSI storage arrays."}],"source_content_type":"text/x-yaml","patch_set":20,"id":"7faddb67_d21d5c0f","line":3,"updated":"2019-08-19 18:45:53.000000000","message":"should mention that this driver(s) replace the old","commit_id":"e18f05e735900acc12a7beac2ac8eca9a425e55a"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"48da8db4ce17cab856bb2602cc0d5fe8b5afce49","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - New Cinder driver for Seagate FC and iSCSI storage arrays."}],"source_content_type":"text/x-yaml","patch_set":20,"id":"7faddb67_d279dc2e","line":3,"in_reply_to":"7faddb67_d21d5c0f","updated":"2019-08-19 18:52:19.000000000","message":"That\u0027s a little tricky as to end users, there wasn\u0027t an old driver that this is replacing. We had \"hidden\" that DotHill one because it was unsupported, but there were the HPMSA and Lenovo OEM\u0027d versions of it that actually were supported. So this code was in use and in-tree for several releases now, but until this rebranding we did not actually expose it as a driver that could be used.","commit_id":"e18f05e735900acc12a7beac2ac8eca9a425e55a"},{"author":{"_account_id":17042,"name":"Chris M","email":"cinder@tristero.net","username":"pots"},"change_message_id":"4c67167048259c8d07589e1b9a1dc6aa202c7c97","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - New Cinder driver for Seagate FC and iSCSI storage arrays."}],"source_content_type":"text/x-yaml","patch_set":20,"id":"7faddb67_78bc8905","line":3,"in_reply_to":"7faddb67_d279dc2e","updated":"2019-08-19 20:01:11.000000000","message":"Right--I think that saying that this one \u0027replaces\u0027 the old one would give the wrong impression to users with old Dot Hill hardware.","commit_id":"e18f05e735900acc12a7beac2ac8eca9a425e55a"}]}
