def setup_mysql(): sudo('apt-get install -y mysql-server python-mysqldb') with virtualenv(Settings.DIR_VENV): run('pip install mysqlclient') if not mysql.user_exists(Settings.DB_USER_NAME): mysql.create_user(Settings.DB_USER_NAME, password=Settings.DB_PASSWORD) if not mysql.database_exists(Settings.DB_NAME): mysql.create_database(Settings.DB_NAME, Settings.DB_USER_NAME)
def test_require_database(mysql_server, mysql_user): from fabtools.mysql import database_exists, query from fabtools.require.mysql import database with settings(mysql_user='******', mysql_password=MYSQL_ROOT_PASSWORD): try: database('mydb', owner='myuser') assert database_exists('mydb') finally: query('DROP DATABASE mydb;')
def database(name, **kwargs): """ Require a MySQL database. Extra arguments will be passed to :py:func:`fabtools.mysql.create_database`. Example:: from fabtools import require require.mysql.database('myapp', owner='dbuser') """ if not database_exists(name, **kwargs): create_database(name, **kwargs)
def database(name, **kwargs): """ Require a MySQL database. Extra arguments will be passed to :py:func:`fabtools.mysql.create_database`. Example:: from fabric.api import settings from fabtools import require with settings(mysql_user='******', mysql_password='******'): require.mysql.database('myapp', owner='dbuser') """ if not database_exists(name, **kwargs): create_database(name, **kwargs)
def db_init(): if not mysql.user_exists('featuring'): mysql.create_user('featuring', '123123') if not mysql.database_exists('featuring'): mysql.create_database('featuring', owner='featuring')