c9fe74c2e45ad6d84bf1985f35396db4b2f49e76
[vfc/nfvo/driver/vnfm/svnfm.git] / zte / vmanager / driver / settings.py
1 # Copyright 2016-2017 ZTE Corporation.
2 #
3 # Licensed under the Apache License, Version 2.0 (the "License");
4 # you may not use this file except in compliance with the License.
5 # You may obtain a copy of the License at
6 #
7 #         http://www.apache.org/licenses/LICENSE-2.0
8 #
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 # See the License for the specific language governing permissions and
13 # limitations under the License.
14
15 import os
16 import sys
17
18 # Build paths inside the project like this: os.path.join(BASE_DIR, ...)
19
20 BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
21
22
23 # Quick-start development settings - unsuitable for production
24 # See https://docs.djangoproject.com/en/1.9/howto/deployment/checklist/
25
26 # SECURITY WARNING: keep the secret key used in production secret!
27 SECRET_KEY = '3o-wney!99y)^h3v)0$j16l9=fdjxcb+a8g+q3tfbahcnu2b0o'
28
29 # SECURITY WARNING: don't run with debug turned on in production!
30 DEBUG = True
31
32 ALLOWED_HOSTS = ['*']
33
34
35 # Application definition
36
37 INSTALLED_APPS = [
38     'django.contrib.auth',
39     'django.contrib.contenttypes',
40     'django.contrib.sessions',
41     'django.contrib.messages',
42     'django.contrib.staticfiles',
43     'rest_framework',
44     'driver.pub.database',
45     'driver.interfaces',
46     'drf_yasg',
47 ]
48
49 MIDDLEWARE_CLASSES = [
50     'django.middleware.security.SecurityMiddleware',
51     'django.contrib.sessions.middleware.SessionMiddleware',
52     'django.middleware.common.CommonMiddleware',
53     'django.middleware.csrf.CsrfViewMiddleware',
54     'django.contrib.auth.middleware.AuthenticationMiddleware',
55     'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
56     'django.contrib.messages.middleware.MessageMiddleware',
57     'django.middleware.clickjacking.XFrameOptionsMiddleware',
58 ]
59
60 ROOT_URLCONF = 'driver.urls'
61
62 WSGI_APPLICATION = 'driver.wsgi.application'
63
64
65 REST_FRAMEWORK = {
66     'DEFAULT_RENDERER_CLASSES': (
67         'rest_framework.renderers.JSONRenderer',
68     ),
69
70     'DEFAULT_PARSER_CLASSES': (
71         'rest_framework.parsers.JSONParser',
72         'rest_framework.parsers.MultiPartParser',
73     )
74 }
75
76 # drf-yasg
77 TEMPLATES = [
78     {
79         'BACKEND': 'django.template.backends.django.DjangoTemplates',
80         'DIRS': [],
81         'APP_DIRS': True,
82         'OPTIONS': {
83             'context_processors': [
84                 'django.template.context_processors.debug',
85                 'django.template.context_processors.request',
86                 'django.contrib.auth.context_processors.auth',
87                 'django.contrib.messages.context_processors.messages',
88             ],
89         },
90     },
91 ]
92
93 SWAGGER_SETTINGS = {
94     'LOGIN_URL': '/admin/login',
95     'LOGOUT_URL': '/admin/logout',
96
97     'DEFAULT_INFO': 'driver.swagger.urls.swagger_info'
98 }
99
100 DATABASES = {
101     'default': {
102         'ENGINE': 'django.db.backends.sqlite3',
103         'NAME': ':memory:',
104     },
105 }
106
107 TIME_ZONE = 'UTC'
108
109 # Static files (CSS, JavaScript, Images)
110 # https://docs.djangoproject.com/en/1.6/howto/static-files/
111
112 STATIC_URL = '/static/'
113
114 LOGGING = {
115     'version': 1,
116     'disable_existing_loggers': True,
117     'formatters': {
118         'standard': {
119             'format': '%(asctime)s:[%(name)s]:[%(filename)s]-[%(lineno)d] [%(levelname)s]:%(message)s',
120         },
121     },
122     'filters': {
123     },
124     'handlers': {
125         'driver_handler': {
126             'level': 'DEBUG',
127             'class': 'logging.handlers.RotatingFileHandler',
128             'filename': os.path.join(
129                 BASE_DIR,
130                 'logs/runtime_driver.log'),
131             'formatter': 'standard',
132             'maxBytes': 1024 * 1024 * 50,
133             'backupCount': 5,
134         },
135     },
136     'loggers': {
137         'driver': {
138             'handlers': ['driver_handler'],
139             'level': 'DEBUG',
140             'propagate': False},
141     }}
142
143 if 'test' in sys.argv:
144     from driver.pub.config import config
145     config.REG_TO_MSB_WHEN_START = False
146     REST_FRAMEWORK = {}
147     import platform
148     if platform.system() == 'Linux':
149         TEST_RUNNER = 'xmlrunner.extra.djangotestrunner.XMLTestRunner'
150         TEST_OUTPUT_VERBOSE = True
151         TEST_OUTPUT_DESCRIPTIONS = True
152         TEST_OUTPUT_DIR = 'test-reports'