def delete_workflow_definition(identifier, session=None): wf_def = get_workflow_definition(identifier) if wf_def.project_id != security.get_project_id(): raise exc.NotAllowedException( "Can not delete workflow of other users. [workflow_identifier=%s]" % identifier ) if wf_def.is_system: msg = "Attempt to delete a system workflow: %s" % identifier raise exc.DataAccessException(msg) cron_triggers = _get_associated_cron_triggers(identifier) if cron_triggers: raise exc.DBException( "Can't delete workflow that has triggers associated. " "[workflow_identifier=%s], [cron_trigger_name(s)=%s]" % (identifier, ', '.join(cron_triggers)) ) # Delete workflow members first. delete_resource_members(resource_type='workflow', resource_id=wf_def.id) session.delete(wf_def)
def drop_db(): global _facade try: models.Workbook.metadata.drop_all(b.get_engine()) _facade = None except Exception as e: raise exc.DBException("Failed to drop database: %s" % e)
def setup_db(): try: models.Workbook.metadata.create_all(b.get_engine()) except sa.exc.OperationalError as e: raise exc.DBException("Failed to setup database: %s" % e)