Bootstrap Flask application

pull/6/head
Yax 10 years ago
parent 2053e116a4
commit 203438ab7c

@ -0,0 +1,52 @@
#!/usr/bin/python
# -*- coding: UTF-8 -*-
import os
import sys
import logging
from flask import Flask
from werkzeug.contrib.fixers import ProxyFix
app = Flask(__name__)
# add current and parent path to syspath
currentPath = os.path.dirname(__file__)
parentPath = os.path.abspath(os.path.join(currentPath, os.path.pardir))
paths = [currentPath, parentPath]
for path in paths:
if path not in sys.path:
sys.path.insert(0, path)
# configure logging
import config
def configure_logging(level):
root_logger = logging.getLogger()
root_logger.setLevel(level)
ch = logging.StreamHandler()
ch.setLevel(level)
# create formatter
formatter = logging.Formatter('[%(asctime)s] %(name)s %(levelname)s %(message)s')
# add formatter to ch
ch.setFormatter(formatter)
# add ch to logger
root_logger.addHandler(ch)
logging_level = (20, 10)[config.DEBUG]
configure_logging(logging_level)
logger = logging.getLogger(__name__)
# initialize database
from app.services import database
database.setup()
app.wsgi_app = ProxyFix(app.wsgi_app)
logger.info("Start Stacosys application")
app.run(host=config.HTTP_ADDRESS,
port=config.HTTP_PORT,
debug=config.DEBUG, use_reloader=False)

@ -29,11 +29,7 @@ def hash(value):
@provide_db
def setup(db):
from app.models.user import User
db.create_tables([User], safe=True)
# create admin user if user table is empty
if User.select().count() == 0:
admin_user = User(username='admin', password=hash('admin'),
displayname='Admin')
admin_user.save()
from app.models.site import Site
from app.models.comment import Comment
db.create_tables([Site, Comment], safe=True)

@ -1,3 +1,8 @@
# Configuration file
DEBUG = True
DB_URL = "mysql://stacosys_user:stacosys_password@localhost:3306/stacosys"
HTTP_ADDRESS = "0.0.0.0"
HTTP_PORT = 8000

Loading…
Cancel
Save