31 lines
933 B
Python
31 lines
933 B
Python
from dbActions.users import Users
|
|
import hashlib
|
|
import os
|
|
|
|
def create_super_user():
|
|
users_manager = Users()
|
|
|
|
email = os.getenv('SUPERUSER_EMAIL', '').strip()
|
|
password = os.getenv('SUPERUSER_PASSWORD', '').strip()
|
|
role = 'admin'
|
|
|
|
if not email:
|
|
raise ValueError("SUPERUSER_EMAIL is not set or empty")
|
|
if not password:
|
|
raise ValueError("SUPERUSER_PASSWORD is not set or empty")
|
|
|
|
# check if user already exists
|
|
existing_user = users_manager.get_user(email)
|
|
if existing_user:
|
|
print(f"Super user '{email}' already exists. Skipping creation.")
|
|
return
|
|
|
|
passwd_hash = hashlib.md5(password.encode('utf-8')).hexdigest()
|
|
users_manager.add_user(email, passwd_hash, role)
|
|
print(f"Super user created: {email} (role={role})")
|
|
|
|
if __name__ == "__main__":
|
|
try:
|
|
create_super_user()
|
|
except Exception as e:
|
|
print(f"Failed to create super user: {e}") |