135 lines
3.7 KiB
Python
135 lines
3.7 KiB
Python
import logging
|
|
import sys
|
|
|
|
from peewee import MySQLDatabase, SqliteDatabase
|
|
|
|
|
|
LOG_FORMAT = '%(asctime)-15s - %(levelname)s - %(pathname)s - ' + \
|
|
'%(funcName)s - %(message)s'
|
|
|
|
|
|
class FlaskConfig(object):
|
|
SECRET_KEY = '1cb18882-6d12-440d-a4cc-b7430fb5f884'
|
|
|
|
|
|
class MailConfig(object):
|
|
MAIL_SERVER = 'email-smtp.us-east-1.amazonaws.com'
|
|
MAIL_USE_TLS = True
|
|
MAIL_PORT = 587
|
|
MAIL_USERNAME = 'AKIAIXV5SDGCPVMU3N4Q'
|
|
MAIL_PASSWORD = 'AhmX/vWE91uQ2RtcEKTkfNrzZehEjPNXOXeOXgQNfLao'
|
|
DEFAULT_MAIL_SENDER = 'support@quay.io'
|
|
MAIL_FAIL_SILENTLY = False
|
|
TESTING = False
|
|
|
|
|
|
class SQLiteDB(object):
|
|
DB_NAME = 'test/data/test.db'
|
|
DB_CONNECTION_ARGS = {
|
|
'threadlocals': True
|
|
}
|
|
DB_DRIVER = SqliteDatabase
|
|
|
|
|
|
class RDSMySQL(object):
|
|
DB_NAME = 'quay'
|
|
DB_CONNECTION_ARGS = {
|
|
'host': 'fluxmonkeylogin.cb0vumcygprn.us-east-1.rds.amazonaws.com',
|
|
'user': 'fluxmonkey',
|
|
'passwd': '8eifM#uoZ85xqC^',
|
|
'threadlocals': True,
|
|
}
|
|
DB_DRIVER = MySQLDatabase
|
|
|
|
|
|
class AWSCredentials(object):
|
|
AWS_ACCESS_KEY = 'AKIAJWZWUIS24TWSMWRA'
|
|
AWS_SECRET_KEY = 'EllGwP+noVvzmsUGQJO1qOMk3vm10Vg+UE6xmmpw'
|
|
REGISTRY_S3_BUCKET = 'quay-registry'
|
|
|
|
|
|
class S3Storage(AWSCredentials):
|
|
STORAGE_KIND = 's3'
|
|
|
|
|
|
class LocalStorage(object):
|
|
STORAGE_KIND = 'local'
|
|
LOCAL_STORAGE_DIR = 'test/data/registry'
|
|
|
|
|
|
class StripeTestConfig(object):
|
|
STRIPE_SECRET_KEY = 'sk_test_PEbmJCYrLXPW0VRLSnWUiZ7Y'
|
|
STRIPE_PUBLISHABLE_KEY = 'pk_test_uEDHANKm9CHCvVa2DLcipGRh'
|
|
|
|
|
|
class StripeLiveConfig(object):
|
|
STRIPE_SECRET_KEY = 'sk_live_TRuTHYwTvmrLeU3ib7Z9hpqE'
|
|
STRIPE_PUBLISHABLE_KEY = 'pk_live_P5wLU0vGdHnZGyKnXlFG4oiu'
|
|
|
|
|
|
class MixpanelTestConfig(object):
|
|
MIXPANEL_KEY = '38014a0f27e7bdc3ff8cc7cc29c869f9'
|
|
|
|
|
|
class MixpanelProdConfig(object):
|
|
MIXPANEL_KEY = '50ff2b2569faa3a51c8f5724922ffb7e'
|
|
|
|
|
|
class GitHubTestConfig(object):
|
|
GITHUB_CLIENT_ID = 'cfbc4aca88e5c1b40679'
|
|
GITHUB_CLIENT_SECRET = '7d1cc21e17e10cd8168410e2cd1e4561cb854ff9'
|
|
GITHUB_TOKEN_URL = 'https://github.com/login/oauth/access_token'
|
|
GITHUB_USER_URL = 'https://api.github.com/user'
|
|
GITHUB_USER_EMAILS = GITHUB_USER_URL + '/emails'
|
|
|
|
|
|
class GitHubProdConfig(GitHubTestConfig):
|
|
GITHUB_CLIENT_ID = '5a8c08b06c48d89d4d1e'
|
|
GITHUB_CLIENT_SECRET = 'f89d8bb28ea3bd4e1c68808500d185a816be53b1'
|
|
|
|
|
|
class DigitalOceanConfig(object):
|
|
DO_CLIENT_ID = 'LJ44y2wwYj1MD0BRxS6qHA'
|
|
DO_CLIENT_SECRET = 'b9357a6f6ff45a33bb03f6dbbad135f9'
|
|
DO_SSH_KEY_ID = '46986'
|
|
DO_SSH_PRIVATE_KEY_FILENAME = 'certs/digital_ocean'
|
|
DO_ALLOWED_REGIONS = {1, 4}
|
|
|
|
|
|
class BuildNodeConfig(object):
|
|
BUILD_NODE_PULL_TOKEN = 'F02O2E86CQLKZUQ0O81J8XDHQ6F0N1V36L9JTOEEK6GKKMT1GI8PTJQT4OU88Y6G'
|
|
|
|
|
|
class DebugConfig(FlaskConfig, MailConfig, LocalStorage, SQLiteDB,
|
|
StripeTestConfig, MixpanelTestConfig, GitHubTestConfig,
|
|
DigitalOceanConfig, AWSCredentials, BuildNodeConfig):
|
|
LOGGING_CONFIG = {
|
|
'level': logging.DEBUG,
|
|
'format': LOG_FORMAT
|
|
}
|
|
SEND_FILE_MAX_AGE_DEFAULT = 0
|
|
POPULATE_DB_TEST_DATA = True
|
|
INCLUDE_TEST_ENDPOINTS = True
|
|
|
|
|
|
class LocalHostedConfig(FlaskConfig, MailConfig, S3Storage, RDSMySQL,
|
|
StripeLiveConfig, MixpanelTestConfig,
|
|
GitHubProdConfig, DigitalOceanConfig,
|
|
BuildNodeConfig):
|
|
LOGGING_CONFIG = {
|
|
'level': logging.DEBUG,
|
|
'format': LOG_FORMAT
|
|
}
|
|
SEND_FILE_MAX_AGE_DEFAULT = 0
|
|
|
|
|
|
class ProductionConfig(FlaskConfig, MailConfig, S3Storage, RDSMySQL,
|
|
StripeLiveConfig, MixpanelProdConfig,
|
|
GitHubProdConfig, DigitalOceanConfig, BuildNodeConfig):
|
|
LOGGING_CONFIG = {
|
|
'stream': sys.stderr,
|
|
'level': logging.DEBUG,
|
|
'format': LOG_FORMAT,
|
|
'filename': 'application.log',
|
|
}
|
|
SEND_FILE_MAX_AGE_DEFAULT = 0
|