diff --git a/nova/virt/vmwareapi/driver.py b/nova/virt/vmwareapi/driver.py index 0adb52d..451943d 100644 --- a/nova/virt/vmwareapi/driver.py +++ b/nova/virt/vmwareapi/driver.py @@ -163,6 +163,23 @@ self._vmops = self._resources.get(first_cluster).get('vmops') self._volumeops = self._resources.get(first_cluster).get('volumeops') self._vc_state = self._resources.get(first_cluster).get('vcstate') + + def init_host(self, host): + vim = self._session.vim + if vim is None: + self._session._create_session() + + def cleanup_host(self, host): + # NOTE(hartsocks): we lean on the init_host to force the vim object + # to not be None. + vim = self._session.vim + service_content = vim.get_service_content() + session_manager = service_content.sessionManager + try: + vim.client.service.Logout(session_manager) + except suds.WebFault: + LOG.debug("No vSphere session was open during cleanup_host.") + def cleanup(self, context, instance, network_info, block_device_info=None, destroy_disks=True, migrate_data=None, destroy_vifs=True):