| """Django settings for frontend project. |
| """ |
| |
| import os |
| import common |
| from autotest_lib.client.common_lib import global_config |
| |
| c = global_config.global_config |
| _section = 'AUTOTEST_WEB' |
| |
| DEBUG = c.get_config_value(_section, "sql_debug_mode", type=bool, default=False) |
| TEMPLATE_DEBUG = c.get_config_value(_section, "template_debug_mode", type=bool, |
| default=False) |
| |
| FULL_ADMIN = False |
| |
| ADMINS = ( |
| # ('Your Name', 'your_email@domain.com'), |
| ) |
| |
| MANAGERS = ADMINS |
| |
| def _get_config(config_key, default=None): |
| """Retrieves a global config value for the specified key. |
| |
| @param config_key: The string key associated with the desired config value. |
| @param default: The default value to return if an existing one cannot be |
| found. |
| |
| @return The config value, as returned by |
| global_config.global_config.get_config_value(). |
| """ |
| return c.get_config_value(_section, config_key, default=default) |
| |
| AUTOTEST_DEFAULT = { |
| 'ENGINE': 'autotest_lib.frontend.db.backends.afe', |
| 'PORT': '', |
| 'HOST': _get_config("host"), |
| 'NAME': _get_config("database"), |
| 'USER': _get_config("user"), |
| 'PASSWORD': _get_config("password", default=''), |
| 'READONLY_HOST': _get_config("readonly_host", default=_get_config("host")), |
| 'READONLY_USER': _get_config("readonly_user", default=_get_config("user")), |
| } |
| |
| ALLOWED_HOSTS = '*' |
| |
| if AUTOTEST_DEFAULT['READONLY_USER'] != AUTOTEST_DEFAULT['USER']: |
| AUTOTEST_DEFAULT['READONLY_PASSWORD'] = _get_config("readonly_password", |
| default='') |
| else: |
| AUTOTEST_DEFAULT['READONLY_PASSWORD'] = AUTOTEST_DEFAULT['PASSWORD'] |
| |
| DATABASES = {'default': AUTOTEST_DEFAULT} |
| |
| # prefix applied to all URLs - useful if requests are coming through apache, |
| # and you need this app to coexist with others |
| URL_PREFIX = 'afe/server/' |
| TKO_URL_PREFIX = 'new_tko/server/' |
| CROSCHART_URL_PREFIX = 'croschart/server/' |
| |
| # Local time zone for this installation. Choices can be found here: |
| # http://www.postgresql.org/docs/8.1/static/datetime-keywords.html#DATETIME-TIMEZONE-SET-TABLE |
| # although not all variations may be possible on all operating systems. |
| # If running in a Windows environment this must be set to the same as your |
| # system time zone. |
| TIME_ZONE = 'America/Los_Angeles' |
| |
| # Language code for this installation. All choices can be found here: |
| # http://www.w3.org/TR/REC-html40/struct/dirlang.html#langcodes |
| # http://blogs.law.harvard.edu/tech/stories/storyReader$15 |
| LANGUAGE_CODE = 'en-us' |
| |
| SITE_ID = 1 |
| |
| # If you set this to False, Django will make some optimizations so as not |
| # to load the internationalization machinery. |
| USE_I18N = True |
| |
| # Absolute path to the directory that holds media. |
| # Example: "/home/media/media.lawrence.com/" |
| MEDIA_ROOT = '' |
| |
| # URL that handles the media served from MEDIA_ROOT. |
| # Example: "http://media.lawrence.com" |
| MEDIA_URL = '' |
| |
| # URL prefix of static file. Only used by the admin interface. |
| STATIC_URL = '/' + URL_PREFIX + 'admin/' |
| |
| # URL prefix for admin media -- CSS, JavaScript and images. Make sure to use a |
| # trailing slash. |
| # Examples: "http://foo.com/media/", "/media/". |
| ADMIN_MEDIA_PREFIX = '/media/' |
| |
| # Make this unique, and don't share it with anybody. |
| SECRET_KEY = 'pn-t15u(epetamdflb%dqaaxw+5u&2#0u-jah70w1l*_9*)=n7' |
| |
| # List of callables that know how to import templates from various sources. |
| TEMPLATE_LOADERS = ( |
| 'django.template.loaders.filesystem.Loader', |
| 'django.template.loaders.app_directories.Loader', |
| # 'django.template.loaders.eggs.Loader', |
| ) |
| |
| MIDDLEWARE_CLASSES = ( |
| 'django.middleware.common.CommonMiddleware', |
| 'django.contrib.sessions.middleware.SessionMiddleware', |
| 'frontend.apache_auth.ApacheAuthMiddleware', |
| 'django.contrib.auth.middleware.AuthenticationMiddleware', |
| 'django.middleware.doc.XViewMiddleware', |
| 'django.contrib.messages.middleware.MessageMiddleware', |
| 'frontend.shared.json_html_formatter.JsonToHtmlMiddleware', |
| ) |
| |
| ROOT_URLCONF = 'frontend.urls' |
| |
| TEMPLATE_DIRS = ( |
| # Put strings here, like "/home/html/django_templates" or "C:/www/django/templates". |
| # Always use forward slashes, even on Windows. |
| # Don't forget to use absolute paths, not relative paths. |
| |
| os.path.abspath(os.path.dirname(__file__) + '/templates'), |
| os.path.abspath(os.path.dirname(__file__) + '/croschart/templates'), |
| os.path.abspath(os.path.dirname(__file__) + '/perf-dashboard/templates') |
| ) |
| |
| INSTALLED_APPS = ( |
| 'frontend.afe', |
| 'frontend.tko', |
| 'frontend.croschart', |
| 'django.contrib.admin', |
| 'django.contrib.auth', |
| 'django.contrib.contenttypes', |
| 'django.contrib.sessions', |
| 'django.contrib.sites', |
| ) |
| |
| AUTHENTICATION_BACKENDS = ( |
| 'frontend.apache_auth.SimpleAuthBackend', |
| ) |
| # TODO(scottz): Temporary addition until time can be spent untangling middleware |
| # session crosbug.com/31608 |
| SESSION_COOKIE_AGE = 1200 |
| |
| AUTOTEST_CREATE_ADMIN_GROUPS = True |