-# Django settings for patchwork project.
+"""
+Base settings for patchwork project.
+"""
import os
import django
-ROOT_DIR = os.path.join(os.path.dirname(os.path.abspath(__file__)), os.pardir)
+ROOT_DIR = os.path.join(os.path.dirname(os.path.abspath(__file__)),
+ os.pardir, os.pardir, os.pardir)
#
# Core settings
# Models
-INSTALLED_APPS = (
+INSTALLED_APPS = [
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.admin',
'django.contrib.staticfiles',
'patchwork',
-)
+]
# HTTP
else:
MIDDLEWARE_CLASSES.append(
'django.contrib.admindocs.middleware.XViewMiddleware')
- TEST_RUNNER = 'django.test.runner.DiscoverRunner'
-
-# Debugging
-
-DEBUG = True
-
-if django.VERSION >= (1, 7):
- TEST_RUNNER = 'django.test.runner.DiscoverRunner'
-
-# Email
-
-ADMINS = (
- ('Jeremy Kerr', 'jk@ozlabs.org'),
-)
-
-MANAGERS = ADMINS
-
-# Databases
-
-DATABASES = {
- 'default': {
- 'ENGINE': 'django.db.backends.postgresql_psycopg2',
- 'NAME': 'patchwork',
- },
-}
-
-# File Uploads
-
-MEDIA_ROOT = os.path.join(
- ROOT_DIR, 'lib', 'python', 'django', 'contrib', 'admin', 'media')
# Globalization
ROOT_URLCONF = 'patchwork.urls'
-# Security
-
-# Make this unique, and don't share it with anybody.
-SECRET_KEY = '00000000000000000000000000000000000000000000000000'
-
# Templates
-TEMPLATE_DEBUG = True
-
TEMPLATE_DIRS = (
os.path.join(ROOT_DIR, 'templates'),
)
# Set to True to enable the Patchwork XML-RPC interface
ENABLE_XMLRPC = False
-# set to True to enable redirections or URLs from previous versions
+# Set to True to enable redirections or URLs from previous versions
# of patchwork
COMPAT_REDIR = True
# the scheme based on current access. This is useful if SSL protocol
# is terminated upstream of the server (e.g. at the load balancer)
FORCE_HTTPS_LINKS = False
-
-try:
- from local_settings import *
-except ImportError, ex:
- import sys
- sys.stderr.write(\
- ("settings.py: error importing local settings file:\n" + \
- "\t%s\n" + \
- "Do you have a local_settings.py module?\n") % str(ex))
- raise
--- /dev/null
+"""
+Development settings for patchwork project.
+
+These are also used in unit tests.
+
+Design based on:
+ http://www.revsys.com/blog/2014/nov/21/recommended-django-project-layout/
+"""
+
+import django
+
+from base import *
+
+#
+# Core settings
+# https://docs.djangoproject.com/en/1.6/ref/settings/#core-settings
+#
+
+# Security
+
+SECRET_KEY = '00000000000000000000000000000000000000000000000000'
+
+# Debugging
+
+DEBUG = True
+
+# Templates
+
+TEMPLATE_DEBUG = True
+
+# Database
+
+DATABASES = {
+ 'default': {
+ 'ENGINE': 'django.db.backends.mysql',
+ 'HOST': 'localhost',
+ 'PORT': '',
+ 'USER': os.environ['PW_TEST_DB_USER'],
+ 'PASSWORD': os.environ['PW_TEST_DB_PASS'],
+ 'NAME': 'patchwork',
+ 'TEST_CHARSET': 'utf8',
+ },
+}
+
+if django.VERSION >= (1, 7):
+ TEST_RUNNER = 'django.test.runner.DiscoverRunner'
+
+#
+# Patchwork settings
+#
+
+ENABLE_XMLRPC = True
--- /dev/null
+"""
+Sample production-ready settings for patchwork project.
+
+Most of these are commented out as they will be installation dependent.
+
+Design based on:
+ http://www.revsys.com/blog/2014/nov/21/recommended-django-project-layout/
+"""
+
+from base import *
+
+#
+# Core settings
+# https://docs.djangoproject.com/en/1.6/ref/settings/#core-settings
+#
+
+# Security
+
+# SECRET_KEY = '00000000000000000000000000000000000000000000000000'
+
+# Email
+
+# ADMINS = (
+# ('Jeremy Kerr', 'jk@ozlabs.org'),
+# )
+
+# Database
+
+# DATABASES = {
+# 'default': {
+# 'ENGINE': 'django.db.backends.postgresql_psycopg2',
+# 'NAME': 'patchwork',
+# },
+# }
+
+# File Uploads
+
+# MEDIA_ROOT = os.path.join(
+# ROOT_DIR, 'lib', 'python', 'django', 'contrib', 'admin', 'media')
+
+
+#
+# Static files settings
+# https://docs.djangoproject.com/en/1.6/ref/settings/#static-files
+#
+
+# STATIC_ROOT = '/srv/patchwork/htdocs'
+
+
+#
+# Custom user overrides (for legacy)
+#
+
+try:
+ from local_settings import *
+except ImportError, ex:
+ import sys
+ sys.stderr.write(\
+ ("settings.py: error importing local settings file:\n" + \
+ "\t%s\n" + \
+ "Do you have a local_settings.py module?\n") % str(ex))
+ raise