)]}'
{"cinder/tests/unit/volume/drivers/ibm/test_storwize_svc.py":[{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"a7fa0b06e11831e3a3c0fa05377e3da20e5fe194","unresolved":false,"context_lines":[{"line_number":67,"context_line":"    else:"},{"line_number":68,"context_line":"        return SVC_POOLS[0]"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"def _callhome_loop_cleanup(driver):"},{"line_number":71,"context_line":"    if not driver:"},{"line_number":72,"context_line":"        return"},{"line_number":73,"context_line":"    loop \u003d getattr(driver, \u0027_check_callhome_loop\u0027, None)"}],"source_content_type":"text/x-python","patch_set":29,"id":"de5cb0d7_e22a377e","line":70,"updated":"2026-06-08 12:12:03.000000000","message":"pep8: E302 expected 2 blank lines, found 1","commit_id":"ff94de6b7569502173ebe8e96d5eb332ac65e11d"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"a7fa0b06e11831e3a3c0fa05377e3da20e5fe194","unresolved":false,"context_lines":[{"line_number":74,"context_line":"    if loop:"},{"line_number":75,"context_line":"        loop.stop()"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"def _patch_pbha_helpers(driver, fc_wwpns\u003dNone, iscsi_iqn\u003dNone):"},{"line_number":78,"context_line":"    \"\"\"Mocks PBHA backend helpers to return fixed test values."},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"    Args:"}],"source_content_type":"text/x-python","patch_set":29,"id":"a7d03668_97404fb7","line":77,"updated":"2026-06-08 12:12:03.000000000","message":"pep8: E302 expected 2 blank lines, found 1","commit_id":"ff94de6b7569502173ebe8e96d5eb332ac65e11d"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"a7fa0b06e11831e3a3c0fa05377e3da20e5fe194","unresolved":false,"context_lines":[{"line_number":3453,"context_line":""},{"line_number":3454,"context_line":"        return site_volume_info"},{"line_number":3455,"context_line":""},{"line_number":3456,"context_line":"    def _cmd_mkvolume(self, **kwargs):"},{"line_number":3457,"context_line":"        if \u0027volumegroup\u0027 in kwargs:"},{"line_number":3458,"context_line":"            volume_info \u003d {}"},{"line_number":3459,"context_line":"            volume_info[\u0027id\u0027] \u003d self._find_unused_id(self._volumes_list)"}],"source_content_type":"text/x-python","patch_set":29,"id":"21064338_4d2b7dc3","line":3456,"updated":"2026-06-08 12:12:03.000000000","message":"pep8: C901 \u0027StorwizeSVCManagementSimulator._cmd_mkvolume\u0027 is too complex (36)","commit_id":"ff94de6b7569502173ebe8e96d5eb332ac65e11d"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"a7fa0b06e11831e3a3c0fa05377e3da20e5fe194","unresolved":false,"context_lines":[{"line_number":6700,"context_line":"        self.assertIn(src_vol[\u0027name\u0027], clone_params)"},{"line_number":6701,"context_line":"        self.assertEqual(vol_name, tgt_vol[\u0027name\u0027])"},{"line_number":6702,"context_line":""},{"line_number":6703,"context_line":"    @mock.patch.object(storwize_svc_common.StorwizeHelpers, \u0027create_partition_volume\u0027)"},{"line_number":6704,"context_line":"    @mock.patch.object(storwize_svc_common.StorwizeSSH, \u0027addsnapshot\u0027)"},{"line_number":6705,"context_line":"    def test_storwize_svc_create_cloned_volume_from_addsnapshot_partition("},{"line_number":6706,"context_line":"            self, addsnapshot, create_partition_volume):"}],"source_content_type":"text/x-python","patch_set":29,"id":"beec67f8_8f2d285e","line":6703,"updated":"2026-06-08 12:12:03.000000000","message":"pep8: E501 line too long (86 \u003e 79 characters)","commit_id":"ff94de6b7569502173ebe8e96d5eb332ac65e11d"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"a7fa0b06e11831e3a3c0fa05377e3da20e5fe194","unresolved":false,"context_lines":[{"line_number":6741,"context_line":""},{"line_number":6742,"context_line":"        create_partition_volume.assert_called()"},{"line_number":6743,"context_line":"        args, kwargs \u003d create_partition_volume.call_args"},{"line_number":6744,"context_line":"        self.assertNotEqual(kwargs.get(\u0027clone_params\u0027), None)"},{"line_number":6745,"context_line":""},{"line_number":6746,"context_line":"    def test_storwize_svc_create_cloned_volume(self):"},{"line_number":6747,"context_line":"        self._set_flag(\u0027migrate_from_flashcopy\u0027, False)"}],"source_content_type":"text/x-python","patch_set":29,"id":"e7a219ba_1c116120","line":6744,"updated":"2026-06-08 12:12:03.000000000","message":"pep8: H203: Use assertIs(Not)None to check for None","commit_id":"ff94de6b7569502173ebe8e96d5eb332ac65e11d"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"a7fa0b06e11831e3a3c0fa05377e3da20e5fe194","unresolved":false,"context_lines":[{"line_number":17910,"context_line":"        create_partition_volume.assert_called()"},{"line_number":17911,"context_line":""},{"line_number":17912,"context_line":"        # Cleanup: Delete clone groups"},{"line_number":17913,"context_line":"        model_delete_update_vg \u003d self.driver.delete_group(self.ctxt,"},{"line_number":17914,"context_line":"                                                          clone_group_vg,"},{"line_number":17915,"context_line":"                                                          clone_volumes_vg)"},{"line_number":17916,"context_line":"        # Cleanup: Delete source groups"}],"source_content_type":"text/x-python","patch_set":29,"id":"df8eae5f_6fa0b257","line":17913,"updated":"2026-06-08 12:12:03.000000000","message":"pep8: F841 local variable \u0027model_delete_update_vg\u0027 is assigned to but never used","commit_id":"ff94de6b7569502173ebe8e96d5eb332ac65e11d"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"a7fa0b06e11831e3a3c0fa05377e3da20e5fe194","unresolved":false,"context_lines":[{"line_number":17914,"context_line":"                                                          clone_group_vg,"},{"line_number":17915,"context_line":"                                                          clone_volumes_vg)"},{"line_number":17916,"context_line":"        # Cleanup: Delete source groups"},{"line_number":17917,"context_line":"        model_delete_update_src_vg \u003d self.driver.delete_group(self.ctxt,"},{"line_number":17918,"context_line":"                                                              src_group_vg,"},{"line_number":17919,"context_line":"                                                              src_volumes_vg)"},{"line_number":17920,"context_line":""}],"source_content_type":"text/x-python","patch_set":29,"id":"938c3c99_eb6d1136","line":17917,"updated":"2026-06-08 12:12:03.000000000","message":"pep8: F841 local variable \u0027model_delete_update_src_vg\u0027 is assigned to but never used","commit_id":"ff94de6b7569502173ebe8e96d5eb332ac65e11d"}],"cinder/volume/drivers/ibm/storwize_svc/storwize_svc_common.py":[{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"816574b0cff5a802830e79c857e7f97566a41f9a","unresolved":true,"context_lines":[{"line_number":7577,"context_line":""},{"line_number":7578,"context_line":"        # Check if the disk is in use, if we need to."},{"line_number":7579,"context_line":"        manage_if_in_use \u003d ref.get(\u0027manage_if_in_use\u0027, False)"},{"line_number":7580,"context_line":"        if (not manage_if_in_use and"},{"line_number":7581,"context_line":"                self._helpers.is_vdisk_in_use(vdisk[\u0027name\u0027])):"},{"line_number":7582,"context_line":"            reason \u003d _(\u0027The specified vdisk is mapped to a host.\u0027)"},{"line_number":7583,"context_line":"            raise exception.ManageExistingInvalidReference(existing_ref\u003dref,"}],"source_content_type":"text/x-python","patch_set":25,"id":"ab952041_9164ae63","side":"PARENT","line":7580,"updated":"2026-04-15 16:35:07.000000000","message":"This check was a safety guard preventing accidental management of in-use volumes for all Storwize backends (not just PBHA). Removing it means:\n\nAn operator can now manage an in-use non-PBHA volume without manage_if_in_use: True in the ref.","commit_id":"13693f5c512564374b14964121b1eecc83e6bd76"}],"cinder/volume/drivers/ibm/storwize_svc/storwize_svc_fc.py":[{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"816574b0cff5a802830e79c857e7f97566a41f9a","unresolved":true,"context_lines":[{"line_number":375,"context_line":"        # to PBHA or partition volume using unmanage/manage we"},{"line_number":376,"context_line":"        # want to retain host-volume mappings on storage. Hence,"},{"line_number":377,"context_line":"        # do nothing"},{"line_number":378,"context_line":"        if self._get_config_param_value(\u0027migrate_to_partition\u0027,"},{"line_number":379,"context_line":"                                        None) is True:"},{"line_number":380,"context_line":"            LOG.info(\"Leaving without removing attachment on storage.\")"},{"line_number":381,"context_line":"            return"}],"source_content_type":"text/x-python","patch_set":25,"id":"2d3b5487_b2d7b4c4","line":378,"updated":"2026-04-15 16:35:07.000000000","message":"_get_config_param_value calls self.configuration.safe_get(config_param). For a StrOpt, oslo.config returns None when unset or returns the string value \"True\" / \"False\" when set via cinder.conf. The string \"True\" is not the boolean True, so \"True\" is True evaluates to False. The condition can never be triggered by an operator setting migrate_to_partition \u003d True in cinder.conf. The feature is effectively broken from the day it ships.","commit_id":"5c4f47d7385d4c454ef9b29220bbd2b6ea5fb0bb"}]}
