diff --git a/.gitignore b/.gitignore index bd0238f8c50042634fea25e059a2de0fa655ab4e..20bca13b2990f2120bae5a2bb93983534146835a 100644 --- a/.gitignore +++ b/.gitignore @@ -139,4 +139,6 @@ cython_debug/ package-lock.json -TODO.txt \ No newline at end of file +TODO.txt + +config/ \ No newline at end of file diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index cba620d1c86c575fca24e4ea5099e622e3d1b6da..9a134c5a334bbc1f772ae3a1373aef26d73acd82 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -95,6 +95,7 @@ staging: name: staging image: google/cloud-sdk:alpine script: + - mv $CONFIG_VARS ./config/config.py - echo $SERVICE_ACCOUNT > /tmp/$CI_PIPELINE_ID.json - gcloud auth activate-service-account --key-file /tmp/$CI_PIPELINE_ID.json - gcloud --quiet --project $PROJECT_ID app deploy app-staging.yaml @@ -104,13 +105,13 @@ staging: - staging - deploy: stage: deploy environment: name: production image: google/cloud-sdk:alpine script: + - mv $CONFIG_VARS ./config/config.py - echo $SERVICE_ACCOUNT > /tmp/$CI_PIPELINE_ID.json - gcloud auth activate-service-account --key-file /tmp/$CI_PIPELINE_ID.json - gcloud --quiet --project $PROJECT_ID app deploy app.yaml diff --git a/config.py b/config.py deleted file mode 100644 index d027721c839cdddd8ab1da368be9b56b4242485b..0000000000000000000000000000000000000000 --- a/config.py +++ /dev/null @@ -1,20 +0,0 @@ -import os - -class Config(object): - DEBUG = False - TESTING = False - -class ProductionConfig(Config): - pass - -class DevConfig(Config): - DEBUG = True - FLASK_ENV = os.getenv("DEV") - DATASTORE_EMULATOR_HOST = os.getenv("DATASTORE_EMULATOR_HOST") - DATASTORE_EMULATOR_HOST_PATH = os.getenv("DATASTORE_EMULATOR_HOST_PATH") - -class TestingConfig(Config): - TESTING = True - FLASK_ENV = os.getenv("DEV") - DATASTORE_EMULATOR_HOST = os.getenv("DATASTORE_EMULATOR_HOST") - DATASTORE_EMULATOR_HOST_PATH = os.getenv("DATASTORE_EMULATOR_HOST_PATH") \ No newline at end of file diff --git a/main.py b/main.py index 041813997c81ece10c30325d20c5e7dfe171f802..9c27cdafa8c8af6a58f661aaa3105c1dfba37329 100644 --- a/main.py +++ b/main.py @@ -12,18 +12,22 @@ from opencensus.trace.tracer import Tracer from opencensus.ext.flask.flask_middleware import FlaskMiddleware from opencensus.trace.samplers import ProbabilitySampler +app = Flask(__name__) -depl_env = os.getenv("DEPLOYMENT_ENVIRONMENT") - -if depl_env == 'production' or depl_env == 'staging': +if os.getenv('GAE_ENV', '').startswith('standard'): client = google.cloud.logging.Client() handler = CloudLoggingHandler(client) setup_logging(handler) logging.getLogger().setLevel(logging.DEBUG) -app = Flask(__name__) -app.secret_key = os.environ.get("SECRET_KEY") or os.urandom(24) +if os.getenv('GAE_ENV', '').startswith('standard'): + logging.info("Loading app configuration from file") + app.config.from_pyfile('config/config.py') + +if not app.secret_key: + logging.info("Generating a random secret key") + app.secret_key = os.urandom(16) def main(): sde = StackdriverExporter(