diff --git a/.gitignore b/.gitignore index 248fb04eaf7f4814f59b9dc160ee58616ab95ba7..26e723dac9fafa5405375198b313c8cbade10e44 100644 --- a/.gitignore +++ b/.gitignore @@ -57,7 +57,7 @@ coverage.xml local_settings.py # Flask stuff: -instance/ +migrations/ .webassets-cache # Scrapy stuff: diff --git a/instance/__init__.py b/instance/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..9bad5790a5799b96f2e164d825c0b1f8ec0c2dfb --- /dev/null +++ b/instance/__init__.py @@ -0,0 +1 @@ +# coding=utf-8 diff --git a/instance/config.py b/instance/config.py new file mode 100644 index 0000000000000000000000000000000000000000..0cd56422d97f04f11dc1b9079972ec53976e4804 --- /dev/null +++ b/instance/config.py @@ -0,0 +1,48 @@ +# coding=utf-8 +import os + + +class Config(object): + """Parent configuration class.""" + DEBUG = False + CSRF_ENABLED = True + TESTING = False + SECRET = os.getenv('SECRET') + SQLALCHEMY_DATABASE_URI = os.getenv('DATABASE_URL') + + +class DevelopmentConfig(Config): + """Configurations for Development.""" + DEBUG = False + SQLALCHEMY_DATABASE_URI = 'postgresql://localhost/test_db' + SECRET = "ChangeThisStringIfYouWant" + TESTING = False + + +class TestingConfig(Config): + """Configurations for Testing, with a separate test database.""" + TESTING = True + SQLALCHEMY_DATABASE_URI = 'postgresql://localhost/test_db' + DEBUG = True + SECRET = 'ChangeMeMaybe' + + +class StagingConfig(Config): + """Configurations for Staging.""" + DEBUG = True + + +class ProductionConfig(Config): + """Configurations for Production.""" + DEBUG = False + TESTING = False + SQLALCHEMY_DATABASE_URI = 'postgresql://localhost/hodor_prod' + SECRET = "TODO: ChangeMeInProduction" + + +app_config = { + 'development': DevelopmentConfig, + 'testing': TestingConfig, + 'staging': StagingConfig, + 'production': ProductionConfig, +} \ No newline at end of file