blob: df70915bd665f21d5c838ffa4fddbfd3010eb862 [file] [log] [blame] [edit]
"""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