X-Git-Url: https://gerrit.fd.io/r/gitweb?p=csit.git;a=blobdiff_plain;f=resources%2Ftools%2Fdash%2Fapp%2Fpal%2F__init__.py;h=20023ec157abcadd89f1750edc7acfd917fd15d1;hp=9950defa44d0cacfa976a1d2b32cb82484aa685f;hb=f8bdd103ff86c171f6db6cef657c7ecbe97763a1;hpb=a5e8351152d9513811e2d6d9eaaf2180e35e002d diff --git a/resources/tools/dash/app/pal/__init__.py b/resources/tools/dash/app/pal/__init__.py index 9950defa44..20023ec157 100644 --- a/resources/tools/dash/app/pal/__init__.py +++ b/resources/tools/dash/app/pal/__init__.py @@ -11,29 +11,71 @@ # See the License for the specific language governing permissions and # limitations under the License. -"""Initialize Flask app.""" +"""Initialize Flask app. +""" + +import logging + from flask import Flask -from flask_assets import Environment +from flask_assets import Environment, Bundle + +from .utils.constants import Constants as C def init_app(): - """Construct core Flask application with embedded Dash app.""" + """Construct core Flask application with embedded Dash app. + """ + logging.basicConfig( + format=C.LOG_FORMAT, + datefmt=C.LOG_DATE_FORMAT, + level=C.LOG_LEVEL + ) + + logging.info("Application started.") + app = Flask(__name__, instance_relative_config=False) app.config.from_object("config.Config") - assets = Environment() - assets.init_app(app) with app.app_context(): # Import parts of our core Flask app. from . import routes - from .assets import compile_static_assets - - # Import Trending Dash application. - from .trending.dashboard import init_dashboard - app = init_dashboard(app) + assets = Environment() + assets.init_app(app) # Compile static assets. - compile_static_assets(assets) + sass_bundle = Bundle( + "sass/lux.scss", + filters="libsass", + output="dist/css/bootstrap.css", + depends="**/*.scss", + extra={ + "rel": "stylesheet" + } + ) + assets.register("sass_all", sass_bundle) + sass_bundle.build() + + # Set the time period for Trending + if C.TIME_PERIOD is None or C.TIME_PERIOD > C.MAX_TIME_PERIOD: + time_period = C.MAX_TIME_PERIOD + else: + time_period = C.TIME_PERIOD + + # Import Dash applications. + from .news.news import init_news + app = init_news(app) + + from .stats.stats import init_stats + app = init_stats(app, time_period=time_period) + + from .trending.trending import init_trending + app = init_trending(app, time_period=time_period) + + from .report.report import init_report + app = init_report(app, releases=C.RELEASES) + + return app + - return app +app = init_app()