# Django settings for pgweb project. import os PROJECT_ROOT = os.path.abspath(os.path.dirname(__file__)) DEBUG = False ADMINS = ( ('PostgreSQL Webmaster', 'webmaster@postgresql.org'), ) MANAGERS = ADMINS DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql_psycopg2', 'NAME': 'pgweb', } } DEFAULT_AUTO_FIELD = 'django.db.models.AutoField' # Local time zone for this installation. Choices can be found here: # http://en.wikipedia.org/wiki/List_of_tz_zones_by_name # although not all choices may be available on all operating systems. # If running in a Windows environment this must be set to the same as your # system time zone. TIME_ZONE = 'GMT' # Language code for this installation. All choices can be found here: # http://www.i18nguy.com/unicode/language-identifiers.html 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 = False # 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. Make sure to use a # trailing slash if there is a path component (optional in other cases). # Examples: "http://media.lawrence.com", "http://example.com/media/" MEDIA_URL = '' STATIC_URL = '/media/' STATICFILES_DIRS = ( 'media/', ) # Make this unique, and don't share it with anybody. SECRET_KEY = 'REALLYCHANGETHISINSETTINGS_LOCAL.PY' MIDDLEWARE = [ 'django.middleware.common.CommonMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'pgweb.util.middleware.PgMiddleware', ] CSRF_FAILURE_VIEW = 'pgweb.core.views.csrf_failure' ROOT_URLCONF = 'pgweb.urls' TEMPLATES = [{ 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': ['templates', ], 'OPTIONS': { 'context_processors': [ 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages', 'django.template.context_processors.media', 'pgweb.util.contexts.PGWebContextProcessor', ], 'loaders': [ 'pgweb.util.templateloader.TrackingTemplateLoader', 'django.template.loaders.filesystem.Loader', 'django.template.loaders.app_directories.Loader', ], }, }] LOGIN_URL = '/account/login/' LOGIN_REDIRECT_URL = '/account/' LOGOUT_URL = '/account/logout/' AUTHENTICATION_BACKENDS = ( 'pgweb.util.auth.AuthBackend', ) INSTALLED_APPS = [ 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.messages', 'django.contrib.sessions', 'django.contrib.admin', 'django.contrib.staticfiles', 'pgweb.core.apps.CoreAppConfig', 'pgweb.mailqueue', 'pgweb.account', 'pgweb.news', 'pgweb.events', 'pgweb.quotes', 'pgweb.downloads', 'pgweb.docs', 'pgweb.contributors', 'pgweb.profserv', 'pgweb.lists', 'pgweb.security', 'pgweb.sponsors', 'pgweb.survey', 'pgweb.misc', 'pgweb.featurematrix', 'pgweb.search', 'pgweb.pugs', 'pgweb.util', ] # Default format for date/time (as it changes between machines) DATETIME_FORMAT = "Y-m-d H:i:s" DATE_FORMAT = "Y-m-d" # Configure recaptcha. Most details contain keys and are thus handled # in settings_local.py. Override NOCAPTCHA to actually use them. NOCAPTCHA = True RECAPTCHA_SITE_KEY = "" RECAPTCHA_SECRET_KEY = "" ### # Application specific settings, likely overridden in settings_local.py. # # In particular, adjust the email addresses ### SESSION_COOKIE_SECURE = True # Allow our session only over https SESSION_COOKIE_DOMAIN = "www.postgresql.org" # Don't allow access by other postgresql.org sites SESSION_COOKIE_HTTPONLY = True # Access over http only, no js CSRF_COOKIE_SECURE = SESSION_COOKIE_SECURE CSRF_COOKIE_DOMAIN = SESSION_COOKIE_DOMAIN CSRF_COOKIE_HTTPONLY = SESSION_COOKIE_HTTPONLY SITE_ROOT = "https://www.postgresql.org" # Root of working URLs FTP_PICKLE = "/usr/local/pgweb/ftpsite.pickle" # Location of file with current contents from ftp site YUM_JSON = "/usr/local/pgweb/external/yum.json" STATIC_CHECKOUT = "/usr/local/pgweb-static" # Location of a checked out pgweb-static project NOTIFICATION_EMAIL = "someone@example.com" # Address to send notifications *to* NOTIFICATION_FROM = "someone@example.com" # Address to send notifications *from* ACCOUNTS_NOREPLY_FROM = "someone@example.com" # Address to send account messages from BUGREPORT_EMAIL = "someone@example.com" # Address to pgsql-bugs list BUGREPORT_NOREPLY_EMAIL = "someone-noreply@example.com" # Address to no-reply pgsql-bugs address DOCSREPORT_EMAIL = "someone@example.com" # Address to pgsql-docs list DOCSREPORT_NOREPLY_EMAIL = "someone-noreply@example.com" # Address to no-reply pgsql-docs address NEWS_MAIL_SENDER = "someone-noreply@example.com" # Address news is sent from NEWS_MAIL_RECEIVER = "some-announce@example.com" # Address news is sent to NEWS_MAIL_RECEIVER_NAME = "Some Announcement List" # Name field for sending news NEWS_MAIL_TAGKEY = "" # Key used to sign tags for pglister delivery FRONTEND_SERVERS = () # A tuple containing the *IP addresses* of all the # varnish frontend servers in use. FTP_MASTERS = () # A tuple containing the *IP addresses* of all machines # trusted to upload ftp structure data VARNISH_PURGERS = () # Extra servers that can do varnish purges through our queue DO_ESI = False # Generate ESI tags ARCHIVES_SEARCH_SERVER = "archives.postgresql.org" # Where to post REST request for archives search ARCHIVES_SEARCH_PLAINTEXT = False # Contact ARCHIVES_SEARCH_SERVER with http instead of https ARCHIVES_FRONT_ADDRESS = "https://www.postgresql.org" # Domain to read archives messages SEARCH_DSN = "dbname=pgsearch" # database for search, see tools/search/sql/README FRONTEND_SMTP_RELAY = "magus.postgresql.org" # Where to relay user generated email OAUTH = {} # OAuth providers and keys PGDG_ORG_ID = -1 # id of the PGDG organisation entry # For debug toolbar, can then be fully configured in settings_local.py DEBUG_TOOLBAR = False INTERNAL_IPS = [ '127.0.0.1', ] # Load local settings overrides from .settings_local import * if DEBUG and DEBUG_TOOLBAR: MIDDLEWARE.append('debug_toolbar.middleware.DebugToolbarMiddleware') INSTALLED_APPS.append('debug_toolbar')