-
Notifications
You must be signed in to change notification settings - Fork 378
/
settings.py
79 lines (65 loc) · 2.8 KB
/
settings.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
# -*- coding: utf-8 -*-
"""
Tencent is pleased to support the open source community by making 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community
Edition) available.
Copyright (C) 2017-2019 THL A29 Limited, a Tencent company. All rights reserved.
Licensed under the MIT License (the "License"); you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://opensource.org/licenses/MIT
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on
an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
specific language governing permissions and limitations under the License.
请不要修改该文件
如果你需要对settings里的内容做修改,config/default.py 文件中 添加即可
如有任何疑问,请联系 【蓝鲸助手】
"""
import os
# V3判断环境的环境变量为BKPAAS_ENVIRONMENT
if 'BKPAAS_ENVIRONMENT' in os.environ:
ENVIRONMENT = os.getenv('BKPAAS_ENVIRONMENT', 'dev')
# V2判断环境的环境变量为BK_ENV
else:
PAAS_V2_ENVIRONMENT = os.environ.get('BK_ENV', 'development')
ENVIRONMENT = {
'development': 'dev',
'testing': 'stag',
'production': 'prod',
}.get(PAAS_V2_ENVIRONMENT)
DJANGO_CONF_MODULE = 'config.{env}'.format(env=ENVIRONMENT)
try:
_module = __import__(DJANGO_CONF_MODULE, globals(), locals(), ['*'])
except ImportError as e:
raise ImportError("Could not import config '%s' (Is it on sys.path?): %s"
% (DJANGO_CONF_MODULE, e))
for _setting in dir(_module):
if _setting == _setting.upper():
locals()[_setting] = getattr(_module, _setting)
# celery settings
IS_USE_CELERY = locals().get('IS_USE_CELERY', [])
if IS_USE_CELERY:
INSTALLED_APPS = locals().get('INSTALLED_APPS', [])
import djcelery
INSTALLED_APPS += (
'djcelery',
)
djcelery.setup_loader()
CELERY_ENABLE_UTC = False
CELERYBEAT_SCHEDULER = "djcelery.schedulers.DatabaseScheduler"
# remove disabled apps
if 'DISABLED_APPS' in locals():
INSTALLED_APPS = locals().get('INSTALLED_APPS', [])
DISABLED_APPS = locals().get('DISABLED_APPS', [])
INSTALLED_APPS = [_app for _app in INSTALLED_APPS
if _app not in DISABLED_APPS]
_keys = ('AUTHENTICATION_BACKENDS',
'DATABASE_ROUTERS',
'FILE_UPLOAD_HANDLERS',
'MIDDLEWARE',
'PASSWORD_HASHERS',
'TEMPLATE_LOADERS',
'STATICFILES_FINDERS',
'TEMPLATE_CONTEXT_PROCESSORS')
import itertools
for _app, _key in itertools.product(DISABLED_APPS, _keys):
locals()[_key] = tuple([_item for _item in locals()[_key]
if not _item.startswith(_app + '.')])