console/cloud-admin-add.py
2016-05-10 02:42:07 +03:00

37 lines
948 B
Python

#!/usr/bin/env python
# coding: utf-8
import argparse
import validators
from hashlib import md5
from uuid import uuid4
from SWSCloudCore import models
"""
Утилита добавления администратора
Как использовать:
cloud-admin-add.py --email admin@cloud.com --password qwerty
"""
parser = argparse.ArgumentParser(description='')
parser.add_argument('--email', dest="email")
parser.add_argument('--password', dest="password")
args = parser.parse_args()
# validate admin email
if not validators.email(args.email):
sys.exit('invalid email format')
admin_id = uuid4()
admin_email = args.email
admin_password = md5(args.password).hexdigest()
models.database.connect()
if models.Admins.select().where(models.Admins.email == args.email).count() == 0:
models.Admins.create(id=admin_id, email=admin_email, password=admin_password, status=1)
else:
print "already exists"
models.database.close()