diff --git a/fabfile/__init__.py b/fabfile/__init__.py index c93b6962b7..5ef046458f 100644 --- a/fabfile/__init__.py +++ b/fabfile/__init__.py @@ -37,6 +37,7 @@ def install(): platform.install_mayan() platform.install_database_manager() database.create_database() + database.create_user() django.database_config() django.syncdb() django.collectstatic() diff --git a/fabfile/databases/__init__.py b/fabfile/databases/__init__.py index bb1a03d636..a9a319dfba 100644 --- a/fabfile/databases/__init__.py +++ b/fabfile/databases/__init__.py @@ -18,6 +18,18 @@ def create_database(): mysql.create_database() +@task +def create_user(): + """ + Create the Mayan EDMS user + """ + setup_environment() + print(green('Creating Mayan EDMS user', bold=True)) + + if env.database_manager == DB_MYSQL: + mysql.create_user() + + @task def drop_database(): """ diff --git a/fabfile/databases/mysql.py b/fabfile/databases/mysql.py index 3c3e72c129..8c9cf90260 100644 --- a/fabfile/databases/mysql.py +++ b/fabfile/databases/mysql.py @@ -7,6 +7,12 @@ def create_database(): Create the MySQL Mayan EDMS database """ run('echo "CREATE DATABASE %(database_name)s;" | mysql -u root --password=%(database_manager_admin_password)s' % env) + + +def create_user(): + """ + Create the MySQL Mayan EDMS user + """ run('echo "CREATE USER \'%(database_username)s\'@\'%(database_host)s\' IDENTIFIED BY \'%(database_password)s\';" | mysql -u root --password=%(database_manager_admin_password)s' % env) run('echo "GRANT ALL PRIVILEGES ON %(database_name)s.* TO \'%(database_username)s\'@\'%(database_host)s\' WITH GRANT OPTION;" | mysql -u root --password=%(database_manager_admin_password)s' % env)