vigiboard / dashboard / config / middleware.py @ 805cc54a
History | View | Annotate | Download (1.39 KB)
1 | 805cc54a | Thomas ANDREJAK | # -*- coding: utf-8 -*-
|
---|---|---|---|
2 | """WSGI middleware initialization for the dashboard application."""
|
||
3 | |||
4 | from dashboard.config.app_cfg import base_config |
||
5 | from dashboard.config.environment import load_environment |
||
6 | from dashboard.config.dashboard_config import dashboard_config |
||
7 | |||
8 | __all__ = ['make_app']
|
||
9 | |||
10 | # Use base_config to setup the necessary PasteDeploy application factory.
|
||
11 | # make_base_app will wrap the TG2 app with all the middleware it needs.
|
||
12 | make_base_app = base_config.setup_tg_wsgi_app(load_environment) |
||
13 | |||
14 | def make_app(global_conf, full_stack=True, **app_conf): |
||
15 | """
|
||
16 | Set dashboard up with the settings found in the PasteDeploy configuration
|
||
17 | file used.
|
||
18 |
|
||
19 | :param global_conf: The global settings for dashboard (those
|
||
20 | defined under the ``[DEFAULT]`` section).
|
||
21 | :type global_conf: dict
|
||
22 | :param full_stack: Should the whole TG2 stack be set up?
|
||
23 | :type full_stack: str or bool
|
||
24 | :return: The dashboard application with all the relevant middleware
|
||
25 | loaded.
|
||
26 |
|
||
27 | This is the PasteDeploy factory for the dashboard application.
|
||
28 |
|
||
29 | ``app_conf`` contains all the application-specific settings (those defined
|
||
30 | under ``[app:main]``.
|
||
31 |
|
||
32 |
|
||
33 | """
|
||
34 | |||
35 | for i in dashboard_config : |
||
36 | app_conf[i] = dashboard_config[i] |
||
37 | |||
38 | app = make_base_app(global_conf, full_stack=True, **app_conf)
|
||
39 | |||
40 | # Wrap your base TurboGears 2 application with custom middleware here
|
||
41 | |||
42 | return app |