From 014993ee6e09b0208b275c6e7a5413a1feeaa142 Mon Sep 17 00:00:00 2001 From: Pierre Jaury Date: Sat, 25 Jun 2016 14:02:50 +0200 Subject: [PATCH] Add utility functions to manage.py --- admin/manage.py | 33 ++++++++++++++++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) diff --git a/admin/manage.py b/admin/manage.py index fd04185c..0c7a5993 100644 --- a/admin/manage.py +++ b/admin/manage.py @@ -1,4 +1,35 @@ -from freeposte import manager +from freeposte import manager, db +from freeposte.admin import models + + +@manager.command +def flushdb(): + """ Flush the database + """ + db.drop_all() + + +@manager.command +def initdb(): + """ Initialize the database + """ + db.create_all() + + +@manager.command +def admin(localpart, domain_name, password): + """ Create an admin user + """ + domain = models.Domain(name=domain) + user = models.User( + localpart=localpart, + domain=domain, + global_admin=True, + password=hash.sha512_crypt.encrypt(password) + ) + db.session.add(domain) + db.session.add(user) + db.session.commit() if __name__ == "__main__":