diff --git a/nova/compute/manager.py b/nova/compute/manager.py index 727249fa6d37..0c27fd49715b 100644 --- a/nova/compute/manager.py +++ b/nova/compute/manager.py @@ -3525,7 +3525,6 @@ class ComputeManager(manager.Manager): except Exception: # Catch all here because this could be anything. LOG.exception('set_admin_password failed', instance=instance) - self._set_instance_obj_error_state(context, instance) # We create a new exception here so that we won't # potentially reveal password information to the # API caller. The real exception is logged above diff --git a/nova/tests/unit/compute/test_compute_mgr.py b/nova/tests/unit/compute/test_compute_mgr.py index ad52ca152f2f..7578fd18fdd3 100644 --- a/nova/tests/unit/compute/test_compute_mgr.py +++ b/nova/tests/unit/compute/test_compute_mgr.py @@ -3545,14 +3545,9 @@ class ComputeManagerUnitTestCase(test.NoDBTestCase): instance=instance, new_pass=None) - if (expected_exception == exception.SetAdminPasswdNotSupported or - expected_exception == exception.InstanceAgentNotEnabled or - expected_exception == NotImplementedError): + if expected_exception != exception.InstancePasswordSetFailed: instance_save_mock.assert_called_once_with( expected_task_state=task_states.UPDATING_PASSWORD) - else: - # setting the instance to error state - instance_save_mock.assert_called_once_with() self.assertEqual(expected_vm_state, instance.vm_state) # check revert_task_state decorator @@ -3570,7 +3565,7 @@ class ComputeManagerUnitTestCase(test.NoDBTestCase): exc = exception.Forbidden('Internal error') expected_exception = exception.InstancePasswordSetFailed self._do_test_set_admin_password_driver_error( - exc, vm_states.ERROR, None, expected_exception) + exc, vm_states.ACTIVE, None, expected_exception) def test_set_admin_password_driver_not_implemented(self): # Ensure expected exception is raised if set_admin_password not