)]}'
{"cinder/cmd/status.py":[{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"edb06bb310023d769c0b0ae0de1f17ba99fe3dc7","unresolved":false,"context_lines":[{"line_number":17,"context_line":""},{"line_number":18,"context_line":"import sys"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"from cinder import objects"},{"line_number":21,"context_line":"from cinder import service  # noqa"},{"line_number":22,"context_line":"from oslo_config import cfg"},{"line_number":23,"context_line":"from oslo_upgradecheck import upgradecheck as uc"}],"source_content_type":"text/x-python","patch_set":2,"id":"5fc1f717_f7ad799b","line":20,"updated":"2019-04-02 19:30:52.000000000","message":"Local cinder imports should be in its own group after the third party oslo import group.","commit_id":"a318488da580ef34e227ad4f8712944207609f8f"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"a26a02329bc0fd8a7c63a88351baacf50ea2de05","unresolved":false,"context_lines":[{"line_number":41,"context_line":"    volume_drivers \u003d []"},{"line_number":42,"context_line":"    for backend in filter(None, CONF.enabled_backends):"},{"line_number":43,"context_line":"        # Each backend group needs to be registered first"},{"line_number":44,"context_line":"        CONF.register_opts(volume_manager.volume_backend_opts, group\u003dbackend)"},{"line_number":45,"context_line":"        volume_driver \u003d CONF[backend][\u0027volume_driver\u0027]"},{"line_number":46,"context_line":"        volume_drivers.append(volume_driver)"},{"line_number":47,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"5fc1f717_4ed5dd42","line":44,"updated":"2019-04-02 13:51:08.000000000","message":"This line is forcing the change in opts.py -- there are no options being defined here, do we need to put an exception clause in tools/generate_cinder_opts.py not to include cmd/status.py (or am I misunderstanding the purpose of opts.py)?","commit_id":"a318488da580ef34e227ad4f8712944207609f8f"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"734dc1a3bd0419593023971bd5e12fb3a80ee6f1","unresolved":false,"context_lines":[{"line_number":18,"context_line":"import sys"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"from cinder import objects"},{"line_number":21,"context_line":"from cinder import service  # noqa"},{"line_number":22,"context_line":"from oslo_config import cfg"},{"line_number":23,"context_line":"from oslo_upgradecheck import upgradecheck as uc"},{"line_number":24,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"5fc1f717_979c025c","line":21,"updated":"2019-04-04 18:12:46.000000000","message":"Still importing in the wrong spot.","commit_id":"6f30f688c4e1742de981d84c9994a941f6d88c7e"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"734dc1a3bd0419593023971bd5e12fb3a80ee6f1","unresolved":false,"context_lines":[{"line_number":73,"context_line":""},{"line_number":74,"context_line":"        return uc.Result(SUCCESS)"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"    def _check_legacy_windows_config(self):"},{"line_number":77,"context_line":"        \"\"\"Checks to ensure that the Windows driver path is properly updated."},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"        The WindowsDriver was renamed in the Queens release to"}],"source_content_type":"text/x-python","patch_set":5,"id":"5fc1f717_b7e57ede","line":76,"updated":"2019-04-04 18:12:46.000000000","message":"I wonder if it would be better to make this more generic.","commit_id":"6f30f688c4e1742de981d84c9994a941f6d88c7e"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"734dc1a3bd0419593023971bd5e12fb3a80ee6f1","unresolved":false,"context_lines":[{"line_number":86,"context_line":"        \"\"\""},{"line_number":87,"context_line":"        for volume_driver in _get_enabled_drivers():"},{"line_number":88,"context_line":"            if (volume_driver \u003d\u003d"},{"line_number":89,"context_line":"                    \"cinder.volume.drivers.windows.windows.WindowsDriver\"):"},{"line_number":90,"context_line":"                return uc.Result("},{"line_number":91,"context_line":"                    FAILURE,"},{"line_number":92,"context_line":"                    \u0027Setting volume_driver to \u0027"}],"source_content_type":"text/x-python","patch_set":5,"id":"5fc1f717_d7012a6c","line":89,"updated":"2019-04-04 18:12:46.000000000","message":"Then here we could have a list of deprecated and removed drivers that will just check in to see if they have one of them configured:\n\nif volume_driver in OLD_DRIVER_LIST:","commit_id":"6f30f688c4e1742de981d84c9994a941f6d88c7e"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"2bed08032fe3e2e01576f01463a62e57723b4539","unresolved":false,"context_lines":[{"line_number":86,"context_line":"        \"\"\""},{"line_number":87,"context_line":"        for volume_driver in _get_enabled_drivers():"},{"line_number":88,"context_line":"            if (volume_driver \u003d\u003d"},{"line_number":89,"context_line":"                    \"cinder.volume.drivers.windows.windows.WindowsDriver\"):"},{"line_number":90,"context_line":"                return uc.Result("},{"line_number":91,"context_line":"                    FAILURE,"},{"line_number":92,"context_line":"                    \u0027Setting volume_driver to \u0027"}],"source_content_type":"text/x-python","patch_set":5,"id":"5fc1f717_c18cd681","line":89,"in_reply_to":"5fc1f717_d7012a6c","updated":"2019-04-08 13:03:19.000000000","message":"I can go either way on this (specific vs. general).  I do think that it\u0027s worth having separate rename vs removed checks (for a rename check, we can specify the new name, which is helpful), so RENAMED_DRIVER_LIST could be a list of tuples [(old_name, new_name) ...].  The nice thing about the general function is that we can just add elements to the list and always run that check, and then we\u0027d catch bad config not just between release n-1 and n, but farther in the past.  In fact, it might be a good idea to go back and get all the renames from Newton on since there\u0027s no upgrade checker pre-Stein.\n\nIf you do refactor this to be general, I\u0027d suggest not failing on the first error, but instead building a cumulative list of messages to include in the uc.Result.","commit_id":"6f30f688c4e1742de981d84c9994a941f6d88c7e"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"007adf637f6919082f8e7e818ac7b88afc3b6a54","unresolved":false,"context_lines":[{"line_number":42,"context_line":"def _get_enabled_drivers():"},{"line_number":43,"context_line":"    \"\"\"Returns a list of volume_driver entries\"\"\""},{"line_number":44,"context_line":"    volume_drivers \u003d []"},{"line_number":45,"context_line":"    for backend in filter(None, CONF.enabled_backends):"},{"line_number":46,"context_line":"        # Each backend group needs to be registered first"},{"line_number":47,"context_line":"        CONF.register_opts(volume_manager.volume_backend_opts, group\u003dbackend)"},{"line_number":48,"context_line":"        volume_driver \u003d CONF[backend][\u0027volume_driver\u0027]"}],"source_content_type":"text/x-python","patch_set":6,"id":"dfbec78f_147eec6a","line":45,"updated":"2019-05-08 16:04:54.000000000","message":"This blows up if they don\u0027t have enabled_backends configured or things are pointing to the wrong config_dir.\n\nTypeError: \u0027NoneType\u0027 object is not iterable","commit_id":"73537dfdd0bc1d77c7556c4ced7b250b68d18748"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"390d3cfbe71ca1f6292de2f59a1b99261420ac0e","unresolved":false,"context_lines":[{"line_number":42,"context_line":"def _get_enabled_drivers():"},{"line_number":43,"context_line":"    \"\"\"Returns a list of volume_driver entries\"\"\""},{"line_number":44,"context_line":"    volume_drivers \u003d []"},{"line_number":45,"context_line":"    if (CONF.enabled_backends):"},{"line_number":46,"context_line":"        for backend in filter(None, CONF.enabled_backends):"},{"line_number":47,"context_line":"            # Each backend group needs to be registered first"},{"line_number":48,"context_line":"            CONF.register_opts(volume_manager.volume_backend_opts,"}],"source_content_type":"text/x-python","patch_set":7,"id":"dfbec78f_403247a9","line":45,"range":{"start_line":45,"start_character":29,"end_line":45,"end_character":30},"updated":"2019-05-09 18:56:46.000000000","message":"nit: () not needed here.","commit_id":"cf008279191cd9f4e1f785f61408ac76ab3134ff"},{"author":{"_account_id":7198,"name":"Jay Bryant","email":"jungleboyj@electronicjungle.net","username":"jsbryant"},"change_message_id":"9962eaecd2c792e8e83fd7834bec819f517fbd72","unresolved":false,"context_lines":[{"line_number":42,"context_line":"def _get_enabled_drivers():"},{"line_number":43,"context_line":"    \"\"\"Returns a list of volume_driver entries\"\"\""},{"line_number":44,"context_line":"    volume_drivers \u003d []"},{"line_number":45,"context_line":"    if (CONF.enabled_backends):"},{"line_number":46,"context_line":"        for backend in filter(None, CONF.enabled_backends):"},{"line_number":47,"context_line":"            # Each backend group needs to be registered first"},{"line_number":48,"context_line":"            CONF.register_opts(volume_manager.volume_backend_opts,"}],"source_content_type":"text/x-python","patch_set":7,"id":"dfbec78f_a0d1c3fd","line":45,"range":{"start_line":45,"start_character":29,"end_line":45,"end_character":30},"in_reply_to":"dfbec78f_403247a9","updated":"2019-05-09 19:09:51.000000000","message":"Done","commit_id":"cf008279191cd9f4e1f785f61408ac76ab3134ff"}],"cinder/tests/unit/cmd/test_status.py":[{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"3883dcd62d5fd3211c19c34247ca47a3831d59ab","unresolved":false,"context_lines":[{"line_number":55,"context_line":"        CONF.set_override(\u0027volume_driver\u0027, volume_driver,"},{"line_number":56,"context_line":"                          group\u003denabled_backend)"},{"line_number":57,"context_line":"        self.addCleanup(CONF.clear_override, \u0027volume_driver\u0027,"},{"line_number":58,"context_line":"                        group\u003denabled_backend)"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"    def test_check_backup_module(self):"},{"line_number":61,"context_line":"        self._set_config("}],"source_content_type":"text/x-python","patch_set":8,"id":"bfb3d3c7_df0ad124","line":58,"updated":"2019-05-20 21:48:43.000000000","message":"Do we also need to clear_override the enabled_backends here? Might cause some weirdness if other tests that use enabled_backends are added later.","commit_id":"3027132e258f0229bcc7667d3ffcdcb7321c9530"}],"releasenotes/notes/cinder-status-check-windows_iscsi_driver-5f4e0b93c7b92f53.yaml":[{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"7afc7abdf6724b22e8024074b18b2b68e7d44ef3","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"upgrade:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    A new check is added to the ``cinder-status upgrade check CLI to check"},{"line_number":5,"context_line":"    for the use of ``cinder.volume.drivers.windows.windows.WindowsDriver``"},{"line_number":6,"context_line":"    and a message is reported that the user needs to update the setting"},{"line_number":7,"context_line":"    to ``cinder.volume.drivers.windows.iscsi.WindowsISCSIDriver`` if"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"5fc1f717_a981e4fd","line":4,"updated":"2019-04-02 08:23:26.000000000","message":"closing `` required","commit_id":"a00fb8937e3d83912b2bfba786eafc7335a1a00e"}]}
