diff --git a/docs/code.rst b/docs/code.rst index 0c21e79..34709f1 100644 --- a/docs/code.rst +++ b/docs/code.rst @@ -29,12 +29,6 @@ The project module :py:mod:`gvamysql` .. automodule:: gvamysql.urls -:py:mod:`gvamysql.exceptions` ------------------------------ - -.. automodule:: gvamysql.exceptions - - :py:mod:`gvamysql.wsgi` ----------------------- diff --git a/gvamysql/__init__.py b/gvamysql/gvamysql/__init__.py similarity index 100% rename from gvamysql/__init__.py rename to gvamysql/gvamysql/__init__.py diff --git a/gvamysql/celery.py b/gvamysql/gvamysql/celery.py similarity index 100% rename from gvamysql/celery.py rename to gvamysql/gvamysql/celery.py diff --git a/gvamysql/settings/__init__.py b/gvamysql/gvamysql/settings/__init__.py similarity index 100% rename from gvamysql/settings/__init__.py rename to gvamysql/gvamysql/settings/__init__.py diff --git a/gvamysql/settings/base.py b/gvamysql/gvamysql/settings/base.py similarity index 100% rename from gvamysql/settings/base.py rename to gvamysql/gvamysql/settings/base.py diff --git a/gvamysql/settings/local.py b/gvamysql/gvamysql/settings/local.py similarity index 100% rename from gvamysql/settings/local.py rename to gvamysql/gvamysql/settings/local.py diff --git a/gvamysql/settings/production.py b/gvamysql/gvamysql/settings/production.py similarity index 100% rename from gvamysql/settings/production.py rename to gvamysql/gvamysql/settings/production.py diff --git a/gvamysql/settings/test.py b/gvamysql/gvamysql/settings/test.py similarity index 100% rename from gvamysql/settings/test.py rename to gvamysql/gvamysql/settings/test.py diff --git a/gvamysql/urls.py b/gvamysql/gvamysql/urls.py similarity index 100% rename from gvamysql/urls.py rename to gvamysql/gvamysql/urls.py diff --git a/gvamysql/manage.py b/gvamysql/manage.py new file mode 100755 index 0000000..3970649 --- /dev/null +++ b/gvamysql/manage.py @@ -0,0 +1,10 @@ +#!/usr/bin/env python +import os +import sys + +if __name__ == "__main__": + os.environ.setdefault("DJANGO_SETTINGS_MODULE", "gvafile.settings") + + from django.core.management import execute_from_command_line + + execute_from_command_line(sys.argv) diff --git a/gvamysql/mysqltasks/__init__.py b/gvamysql/mysqltasks/__init__.py new file mode 100644 index 0000000..c9f1fef --- /dev/null +++ b/gvamysql/mysqltasks/__init__.py @@ -0,0 +1,3 @@ +""" +This module contains :py:mod:`mysqltasks.tasks`. +""" diff --git a/gvamysql/mysqltasks/models.py b/gvamysql/mysqltasks/models.py new file mode 100644 index 0000000..d1ff455 --- /dev/null +++ b/gvamysql/mysqltasks/models.py @@ -0,0 +1,3 @@ +""" +Empty models module required for Django to accept this as an app. +""" diff --git a/gvamysql/mysqltasks/tasks.py b/gvamysql/mysqltasks/tasks.py new file mode 100644 index 0000000..81d28fa --- /dev/null +++ b/gvamysql/mysqltasks/tasks.py @@ -0,0 +1,76 @@ +""" +This module defines Celery_ tasks to manage MySQL users and database. + +""" +from __future__ import absolute_import, unicode_literals + +from django.conf import settings + +from celery import shared_task +from celery.utils.log import get_task_logger + + +_LOGGER = get_task_logger(__name__) + + +@shared_task +def create_mysql_user(username, password): + """ + This task creates a new MySQL user. + + :param str username: the user name + :param str password: the password + :return: the created user's name + :rtype: str + + """ + + +@shared_task +def set_mysql_userpassword(username, password): + """ + Set a new password for an existing MySQL user. + + :param str username: the user name + :param str password: the password + :return: True if the password could be set, False otherwise + :rtype: boolean + + """ + + +@shared_task +def delete_mysql_user(username): + """ + This task deletes an existing MySQL user. + + :param str username: the user name + :return: True if the user has been deleted, False otherwise + :rtype: boolean + + """ + + +@shared_task +def create_mysql_database(dbname, username): + """ + This task creates a new MySQL database for the given MySQL user. + + :param str dbname: database name + :param str username: the user name of an existing MySQL user + :return: the database name + :rtype: str + + """ + + +@shared_task +def delete_mysql_database(dbname): + """ + This task deletes an existing MySQL database. + + :param str dbname: database name + :return: True if the database has been deleted, False otherwise + :rtype: boolean + + """ diff --git a/requirements/base.txt b/requirements/base.txt index ea93520..c4aa5c8 100644 --- a/requirements/base.txt +++ b/requirements/base.txt @@ -8,3 +8,4 @@ celery==3.1.17 kombu==3.0.24 pytz==2014.10 wsgiref==0.1.2 +mysqlclient==1.3.4