26 lines
974 B
Python
26 lines
974 B
Python
import os
|
|
from app import create_app
|
|
from app.extensions import db
|
|
from app.models import User
|
|
|
|
def create_admin():
|
|
app = create_app()
|
|
with app.app_context():
|
|
admin_email = os.environ.get('ADMIN_EMAIL')
|
|
admin_nickname = os.environ.get('ADMIN_NICKNAME')
|
|
admin_password = os.environ.get('ADMIN_PASSWORD')
|
|
if not (admin_email and admin_nickname and admin_password):
|
|
print("Missing ADMIN_EMAIL, ADMIN_NICKNAME, or ADMIN_PASSWORD in environment.")
|
|
return
|
|
if User.query.filter_by(email=admin_email).first():
|
|
print(f"Admin with email {admin_email} already exists.")
|
|
return
|
|
user = User(nickname=admin_nickname, email=admin_email, is_admin=True, is_active=True)
|
|
user.set_password(admin_password)
|
|
db.session.add(user)
|
|
db.session.commit()
|
|
print(f"Admin user {admin_nickname} <{admin_email}> created.")
|
|
|
|
if __name__ == "__main__":
|
|
create_admin()
|