| |
@@ -6,6 +6,8 @@
|
| |
import os
|
| |
import sys
|
| |
|
| |
+ from . import config
|
| |
+
|
| |
from .util.login import FakeFas
|
| |
|
| |
# the version as used in setup.py and docs
|
| |
@@ -17,17 +19,21 @@
|
| |
|
| |
fas = None
|
| |
|
| |
+ # Is this an OpenShift deployment?
|
| |
+ openshift = os.getenv('OPENSHIFT_PROD')
|
| |
+
|
| |
# load default configuration
|
| |
if os.getenv('DEV') == 'true':
|
| |
app.config.from_object('blockerbugs.config.DevelopmentConfig')
|
| |
fas = FakeFas(app)
|
| |
- elif os.getenv('TEST') == 'true':
|
| |
+ elif os.getenv('TEST') == 'true' or openshift == "0":
|
| |
fas = FAS(app)
|
| |
app.config.from_object('blockerbugs.config.TestingConfig')
|
| |
else:
|
| |
fas = FAS(app)
|
| |
app.config.from_object('blockerbugs.config.ProductionConfig')
|
| |
-
|
| |
+ if openshift:
|
| |
+ config.openshift_config(app.config, openshift)
|
| |
|
| |
# load real configuration values to override defaults
|
| |
config_file = '/etc/blockerbugs/settings.py'
|
| |
@@ -84,20 +90,6 @@
|
| |
|
| |
setup_logging()
|
| |
|
| |
- # check if we're running in an OpenShift deployment
|
| |
- if app.config['OPENSHIFT']:
|
| |
- try:
|
| |
- dbuser = os.environ["POSTGRESQL_USER"]
|
| |
- dbpass = os.environ["POSTGRESQL_PASSWORD"]
|
| |
- dbname = os.environ["POSTGRESQL_DATABASE"]
|
| |
- dbhost = os.environ["POSTGRESQL_SERVICE_HOST"]
|
| |
- dbport = os.environ["POSTGRESQL_SERVICE_PORT"]
|
| |
- except(KeyError):
|
| |
- print("OpenShift mode enabled but values required for db connection couldn't be fetched. "
|
| |
- "Check, if you have these variables defined in you env: "
|
| |
- "(POSTGRESQL_[USER, PASSWORD, DATABASE, SERVICE_HOST, SERVICE_PORT])", file=sys.stderr)
|
| |
- sys.exit(1)
|
| |
- app.config['SQLALCHEMY_DATABASE_URI'] = ("postgresql+psycopg2://%s:%s@%s:%s/%s" % (dbuser, dbpass, dbhost, dbport, dbname))
|
| |
|
| |
app.logger.debug('using DBURI: %s' % app.config['SQLALCHEMY_DATABASE_URI'])
|
| |
|
| |
Maybe also remove this from
config.py
?