def do(self, workflow_dict): try: for host in workflow_dict['source_hosts']: LOG.info("Removing database files on host %s" % host) host_csattr = CsHostAttr.objects.get(host=host) output = {} exec_remote_command( server=host.address, username=host_csattr.vm_user, password=host_csattr.vm_password, command="/opt/dbaas/scripts/dbaas_deletedatabasefiles.sh", output=output ) LOG.info(output) LOG.info("Removing disks on host %s" % host) delete_disk( environment=workflow_dict['source_environment'], host=host ) return True except Exception: traceback = full_stack() workflow_dict['exceptions']['error_codes'].append(DBAAS_0020) workflow_dict['exceptions']['traceback'].append(traceback) return False
def undo(self, workflow_dict): try: if 'volume' in workflow_dict: LOG.info("Destroying NFS volume...") delete_disk(environment=workflow_dict['environment'], host=workflow_dict['volume'].host) return True except Exception: traceback = full_stack() workflow_dict['exceptions']['error_codes'].append(DBAAS_0022) workflow_dict['exceptions']['traceback'].append(traceback) return False
def undo(self, workflow_dict): LOG.info("Running undo...") try: for host in workflow_dict['target_hosts']: LOG.info("Destroying NFS disk...") delete_disk(environment=workflow_dict['environment'], host=host) return True except Exception: traceback = full_stack() workflow_dict['exceptions']['error_codes'].append(DBAAS_0020) workflow_dict['exceptions']['traceback'].append(traceback) return False
def undo(self, workflow_dict): try: for host in workflow_dict['hosts']: if not delete_disk(workflow_dict['environment'], host): return False return True except Exception: traceback = full_stack() workflow_dict['exceptions']['error_codes'].append(DBAAS_0009) workflow_dict['exceptions']['traceback'].append(traceback) return False
def undo(self): LOG.info('Running undo of CreateExport') delete_disk(environment=self.environment, host=self.host)