def _local_pg_dropdb(self, dbname): with local_pgadmin_cursor() as local_cr: local_cr.execute('DROP DATABASE IF EXISTS "%s"' % dbname) # cleanup filestore datadir = appdirs.user_data_dir() paths = [os.path.join(datadir, pn, 'filestore', dbname) for pn in 'OpenERP Odoo'.split()] run(['rm', '-rf'] + paths)
def _local_pg_dropdb(self, dbname): with local_pgadmin_cursor() as local_cr: try: if dbname.startswith('runbot') or dbname.startswith( 'template') or dbname.startswith('postgres'): return local_cr.execute('DROP DATABASE IF EXISTS "%s"' % dbname) logging.info( "0000000000000000\n\n\n\n000000000000000 %s %s" % (dbname, (dbname.replace('-all', '').replace('-prod', '') or '1'))) if dbname.endswith('-all') or dbname.endswith('-prod'): db_user = (dbname.replace('-all', '').replace('-prod', '') or '') try: local_cr.execute('drop role if exists "%s"' % db_user) except: pass except: pass # cleanup filestore datadir = appdirs.user_data_dir() paths = [ os.path.join(datadir, pn, 'filestore', dbname) for pn in 'OpenERP Odoo'.split() ] cmd = ['rm', '-rf'] + paths _logger.debug(' '.join(cmd)) subprocess.call(cmd)
def _local_pg_dropdb(self, dbname): with local_pgadmin_cursor() as local_cr: pid_col = 'pid' if local_cr.connection.server_version >= 90200 else 'procpid' query = 'SELECT pg_terminate_backend({}) FROM pg_stat_activity WHERE datname=%s'.format(pid_col) local_cr.execute(query, [dbname]) local_cr.execute('DROP DATABASE IF EXISTS "%s"' % dbname) # cleanup filestore datadir = appdirs.user_data_dir() paths = [os.path.join(datadir, pn, 'filestore', dbname) for pn in 'OpenERP Odoo'.split()] cmd = ['rm', '-rf'] + paths _logger.debug(' '.join(cmd)) subprocess.call(cmd)