Testing
Warning
Test sites must be deployed to a dedicated test server. You cannot deploy live and test sites to the same server.
Note
The domain name for the site will not be prefixed with www.
Note
The nginx.conf for the test site will not do any redirection to
www, https or http.
To deploy a test site, create a dedicated test server, and update the DNS
records for your test domain to point to this server e.g.
test.hatherleigh.info.
pillar
Create a testing sls:
# config/testing.sls
testing:
True
And add it to the config for the server e.g:
# top.sls
'test-*':
- config.django
- config.testing
'test-a':
- sites.my
Note
You can re-use the live sites pillar…
Append the test domain to the pillar e.g:
# sites/my.sls
sites:
pkimber_net:
profile: django
uwsgi_port: 3035
test:
domain: test.hatherleigh.info
Code
Add TESTING to settings/local.py:
DEBUG = True
TESTING = False
Add TESTING to settings/production.py and update the database NAME:
DEBUG = False
TESTING = get_env_variable_bool('TESTING')
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': '{}_test'.format(SITE_NAME) if TESTING else SITE_NAME,