def drop_database(): # pragma: no cover ''' Deletes the existing postgresql database. ''' import psycopg2 # isort:skip settings = get_settings() dbdata = parse_pgurl( 'psycopg2+postgresql://postgres@localhost:5432/postgres' ) new_dbdata = parse_pgurl(settings.db_url) conn = psycopg2.connect(**dbdata) conn.set_isolation_level(0) cur = conn.cursor() cur.execute('DROP DATABASE IF EXISTS {}'.format(new_dbdata['database'])) cur.close() conn.close()
def create_database(): # pragma: no cover ''' Creates the postgresql database and runs all migrations. ''' import psycopg2 # isort:skip settings = get_settings() dbdata = parse_pgurl( 'psycopg2+postgresql://postgres@localhost:5432/postgres' ) new_dbdata = parse_pgurl(settings.db_url) conn = psycopg2.connect(**dbdata) conn.set_isolation_level(0) cur = conn.cursor() cur.execute('CREATE DATABASE {}'.format(new_dbdata['database'])) cur.close() conn.close() run_migrations()
import os import asyncio import aiopg from chilero import web from emergency import ui, api from emergency.db import parse_pgurl from emergency.settings import get_settings settings = get_settings() def get_routes(): return [ [os.path.join('/api', item[0]), item[1]] for item in api.routes ] + [ [os.path.join('/ui', item[0]), item[1]] for item in ui.routes ] class Application(web.Application): @asyncio.coroutine def get_pool(self): # pragma: no cover if not hasattr(self, '_pool'): self._pool = yield from aiopg.create_pool( **parse_pgurl(settings.db_url) ) return self._pool