Upload
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
import os
|
||||
from flask import Flask
|
||||
from .models import db, User
|
||||
from .routes import bp
|
||||
|
||||
|
||||
def create_app():
|
||||
app = Flask(__name__, instance_relative_config=False)
|
||||
app.config['SECRET_KEY'] = os.getenv('SECRET_KEY', 'change-me')
|
||||
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:////app/data/streamhub.db'
|
||||
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
|
||||
app.config['ADMIN_USERNAME'] = os.getenv('ADMIN_USERNAME', 'admin')
|
||||
app.config['ADMIN_PASSWORD'] = os.getenv('ADMIN_PASSWORD', 'ChangeMe123!')
|
||||
app.config['PUBLIC_BASE_URL'] = os.getenv('PUBLIC_BASE_URL', 'https://localhost')
|
||||
app.config['MEDIA_BASE_URL'] = os.getenv('MEDIA_BASE_URL', 'http://mediamtx:8888')
|
||||
app.config['MEDIA_PUBLIC_HLS_BASE'] = os.getenv('MEDIA_PUBLIC_HLS_BASE', app.config['PUBLIC_BASE_URL'].rstrip('/') + '/hls')
|
||||
app.config['MEDIAMTX_API_URL'] = os.getenv('MEDIAMTX_API_URL', 'http://mediamtx:9997')
|
||||
|
||||
db.init_app(app)
|
||||
app.register_blueprint(bp)
|
||||
|
||||
with app.app_context():
|
||||
db.create_all()
|
||||
if not User.query.filter_by(username=app.config['ADMIN_USERNAME']).first():
|
||||
admin = User(username=app.config['ADMIN_USERNAME'], role='admin', active=True)
|
||||
admin.set_password(app.config['ADMIN_PASSWORD'])
|
||||
db.session.add(admin)
|
||||
db.session.commit()
|
||||
|
||||
return app
|
||||
Reference in New Issue
Block a user