mirror of
https://expo.survex.com/repositories/troggle/.git
synced 2024-11-21 23:01:52 +00:00
sanitized recent localsettings as on server
This commit is contained in:
parent
4d8125a2fd
commit
13a63b64d4
120
_deploy/debian/localsettingsserver-old.py
Normal file
120
_deploy/debian/localsettingsserver-old.py
Normal file
@ -0,0 +1,120 @@
|
|||||||
|
import sys
|
||||||
|
import os
|
||||||
|
import urllib.parse
|
||||||
|
"""Settings for a troggle installation which may vary among different
|
||||||
|
installations: for development or deployment, in a docker image or
|
||||||
|
python virtual environment (venv), on ubuntu, debian or in Windows
|
||||||
|
System for Linux (WSL), on the main server or in the potato hut,
|
||||||
|
using SQLite or mariaDB.
|
||||||
|
|
||||||
|
It sets the directory locations for the major parts of the system so
|
||||||
|
that e.g. expofiles can be on a different filesystem.
|
||||||
|
|
||||||
|
This file is included at the end of the main troggle/settings.py file so that
|
||||||
|
it overwrites defaults in that file.
|
||||||
|
"""
|
||||||
|
|
||||||
|
print(" * importing troggle/localsettings.py")
|
||||||
|
|
||||||
|
# DO NOT check this file into the git repo - it contains real passwords. [not this copy]
|
||||||
|
SECRET_KEY = "zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz"
|
||||||
|
EXPOUSERPASS = "nope"
|
||||||
|
EXPOADMINUSERPASS = "nope"
|
||||||
|
EMAIL_HOST_PASSWORD = "nope"
|
||||||
|
|
||||||
|
|
||||||
|
DATABASES = {
|
||||||
|
'default': {
|
||||||
|
'ENGINE': 'django.db.backends.mysql', # 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
|
||||||
|
'NAME' : 'troggle', # Or path to database file if using sqlite3.
|
||||||
|
'USER' : 'expo', # Not used with sqlite3.
|
||||||
|
'PASSWORD' : 'not a real password', # Not used with sqlite3.
|
||||||
|
'HOST' : '', # Set to empty string for localhost. Not used with sqlite3.
|
||||||
|
'PORT' : '', # Set to empty string for default. Not used with sqlite3.
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
EXPOUSER = 'expo'
|
||||||
|
EXPOUSERPASS = "nnn:gggggg"
|
||||||
|
EXPOUSER_EMAIL = 'wookey@wookware.org'
|
||||||
|
|
||||||
|
REPOS_ROOT_PATH = '/home/expo/'
|
||||||
|
sys.path.append(REPOS_ROOT_PATH)
|
||||||
|
sys.path.append(REPOS_ROOT_PATH + 'troggle')
|
||||||
|
# Define the path to the django app (troggle in this case)
|
||||||
|
PYTHON_PATH = REPOS_ROOT_PATH + 'troggle/'
|
||||||
|
|
||||||
|
TEMPLATES = [
|
||||||
|
{
|
||||||
|
'BACKEND': 'django.template.backends.django.DjangoTemplates',
|
||||||
|
'DIRS': [
|
||||||
|
PYTHON_PATH + "templates"
|
||||||
|
],
|
||||||
|
'OPTIONS': {
|
||||||
|
'debug': 'DEBUG',
|
||||||
|
'context_processors': [
|
||||||
|
'django.contrib.auth.context_processors.auth',
|
||||||
|
'core.context.troggle_context',
|
||||||
|
'django.template.context_processors.debug',
|
||||||
|
'django.template.context_processors.i18n',
|
||||||
|
'django.template.context_processors.media',
|
||||||
|
'django.template.context_processors.static',
|
||||||
|
'django.template.context_processors.tz',
|
||||||
|
'django.contrib.messages.context_processors.messages',
|
||||||
|
],
|
||||||
|
'loaders': [
|
||||||
|
'django.template.loaders.filesystem.Loader',
|
||||||
|
'django.template.loaders.app_directories.Loader',
|
||||||
|
# insert your TEMPLATE_LOADERS here
|
||||||
|
]
|
||||||
|
},
|
||||||
|
},
|
||||||
|
]
|
||||||
|
|
||||||
|
PUBLIC_SITE = True
|
||||||
|
|
||||||
|
# This should be False for normal running
|
||||||
|
DEBUG = True
|
||||||
|
|
||||||
|
SURVEX_DATA = REPOS_ROOT_PATH + 'loser/'
|
||||||
|
DRAWINGS_DATA = REPOS_ROOT_PATH + 'drawings/'
|
||||||
|
|
||||||
|
CAVERN = 'cavern'
|
||||||
|
THREEDTOPOS = 'survexport'
|
||||||
|
EXPOWEB = REPOS_ROOT_PATH + 'expoweb/'
|
||||||
|
SURVEYS = REPOS_ROOT_PATH
|
||||||
|
SURVEY_SCANS = REPOS_ROOT_PATH + 'expofiles/surveyscans/'
|
||||||
|
FILES = REPOS_ROOT_PATH + 'expofiles'
|
||||||
|
CAVEDESCRIPTIONS = os.path.join(EXPOWEB, "cave_data")
|
||||||
|
ENTRANCEDESCRIPTIONS = os.path.join(EXPOWEB, "entrance_data")
|
||||||
|
|
||||||
|
CACHEDIR = REPOS_ROOT_PATH + 'expowebcache/'
|
||||||
|
THREEDCACHEDIR = CACHEDIR + '3d/'
|
||||||
|
THUMBNAILCACHE = CACHEDIR + 'thumbs'
|
||||||
|
|
||||||
|
PYTHON_PATH = REPOS_ROOT_PATH + 'troggle/'
|
||||||
|
|
||||||
|
URL_ROOT = 'http://expo.survex.com/'
|
||||||
|
DIR_ROOT = ''#this should end in / if a value is given
|
||||||
|
EXPOWEB_URL = '/'
|
||||||
|
SURVEYS_URL = '/survey_scans/'
|
||||||
|
EXPOFILES = urllib.parse.urljoin(REPOS_ROOT_PATH, 'expofiles/')
|
||||||
|
PHOTOS_URL = urllib.parse.urljoin(URL_ROOT, '/photos/')
|
||||||
|
|
||||||
|
# MEDIA_URL is used by urls.py in a regex. See urls.py & core/views/surveys.py
|
||||||
|
MEDIA_URL = '/site_media/'
|
||||||
|
|
||||||
|
MEDIA_ROOT = REPOS_ROOT_PATH + '/troggle/media/'
|
||||||
|
|
||||||
|
STATIC_URL = urllib.parse.urljoin(URL_ROOT , '/static/') # used by Django admin pages. Do not delete.
|
||||||
|
JSLIB_URL = urllib.parse.urljoin(URL_ROOT , '/javascript/') # always fails, try to revive it ?
|
||||||
|
|
||||||
|
#TINY_MCE_MEDIA_ROOT = STATIC_ROOT + '/tiny_mce/' # not needed while TinyMCE not installed
|
||||||
|
#TINY_MCE_MEDIA_URL = STATIC_URL + '/tiny_mce/' # not needed while TinyMCE not installed
|
||||||
|
|
||||||
|
LOGFILE = '/var/log/troggle/troggle.log'
|
||||||
|
IMPORTLOGFILE = '/var/log/troggle/import.log'
|
||||||
|
|
||||||
|
# add in 290, 291, 358 when they don't make it crash horribly
|
||||||
|
NOTABLECAVESHREFS = [ "264", "258", "204", "76", "107"]
|
@ -1,6 +1,7 @@
|
|||||||
import sys
|
import sys
|
||||||
import os
|
import os
|
||||||
import urllib.parse
|
import urllib.parse
|
||||||
|
from pathlib import Path
|
||||||
"""Settings for a troggle installation which may vary among different
|
"""Settings for a troggle installation which may vary among different
|
||||||
installations: for development or deployment, in a docker image or
|
installations: for development or deployment, in a docker image or
|
||||||
python virtual environment (venv), on ubuntu, debian or in Windows
|
python virtual environment (venv), on ubuntu, debian or in Windows
|
||||||
@ -8,27 +9,29 @@ System for Linux (WSL), on the main server or in the potato hut,
|
|||||||
using SQLite or mariaDB.
|
using SQLite or mariaDB.
|
||||||
|
|
||||||
It sets the directory locations for the major parts of the system so
|
It sets the directory locations for the major parts of the system so
|
||||||
that e.g. expofiles can be on a different filesystem.
|
that e.g. expofiles can be on a different filesystem, or /javascript/ can be in
|
||||||
|
a system-wide location rather than just a local directory.
|
||||||
|
|
||||||
This file is included at the end of the main troggle/settings.py file so that
|
This file is included at the end of the main troggle/settings.py file so that
|
||||||
it overwrites defaults in that file.
|
it overwrites defaults in that file.
|
||||||
|
|
||||||
|
Read https://realpython.com/python-pathlib/
|
||||||
|
Read https://adamj.eu/tech/2020/03/16/use-pathlib-in-your-django-project/
|
||||||
"""
|
"""
|
||||||
|
|
||||||
print(" * importing troggle/localsettings.py")
|
print(" * importing troggle/localsettings.py")
|
||||||
|
|
||||||
# DO NOT check this file into the git repo - it contains real passwords. [not this copy]
|
# DO NOT check this file into the git repo - it contains real passwords.
|
||||||
SECRET_KEY = "zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz"
|
|
||||||
EXPOUSERPASS = "nope"
|
|
||||||
EXPOADMINUSERPASS = "nope"
|
|
||||||
EMAIL_HOST_PASSWORD = "nope"
|
|
||||||
|
|
||||||
|
EXPOFILESREMOTE = False # if True, then re-routes urls in expofiles to remote sever
|
||||||
|
#SECURE_SSL_REDIRECT = True # breaks 7 tests in test suite 301 not 200 (or 302) and runserver fails completely
|
||||||
|
|
||||||
DATABASES = {
|
DATABASES = {
|
||||||
'default': {
|
'default': {
|
||||||
'ENGINE': 'django.db.backends.mysql', # 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
|
'ENGINE': 'django.db.backends.mysql', # 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
|
||||||
'NAME' : 'troggle', # Or path to database file if using sqlite3.
|
'NAME' : 'troggle', # Or path to database file if using sqlite3.
|
||||||
'USER' : 'expo', # Not used with sqlite3.
|
'USER' : 'expo', # Not used with sqlite3.
|
||||||
'PASSWORD' : 'not a real password', # Not used with sqlite3.
|
'PASSWORD' : 'uFqP56B4XleeyIW', # Not used with sqlite3.
|
||||||
'HOST' : '', # Set to empty string for localhost. Not used with sqlite3.
|
'HOST' : '', # Set to empty string for localhost. Not used with sqlite3.
|
||||||
'PORT' : '', # Set to empty string for default. Not used with sqlite3.
|
'PORT' : '', # Set to empty string for default. Not used with sqlite3.
|
||||||
}
|
}
|
||||||
@ -36,15 +39,21 @@ DATABASES = {
|
|||||||
|
|
||||||
|
|
||||||
EXPOUSER = 'expo'
|
EXPOUSER = 'expo'
|
||||||
EXPOUSERPASS = "nnn:gggggg"
|
EXPOADMINUSER = 'expoadmin'
|
||||||
EXPOUSER_EMAIL = 'wookey@wookware.org'
|
EXPOUSER_EMAIL = 'wookey@wookware.org'
|
||||||
|
EXPOADMINUSER_EMAIL = 'wookey@wookware.org'
|
||||||
|
|
||||||
|
SECRET_KEY = "zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz"
|
||||||
|
EXPOUSERPASS = "nope"
|
||||||
|
EXPOADMINUSERPASS = "nope"
|
||||||
|
EMAIL_HOST_PASSWORD = "nope"
|
||||||
|
|
||||||
REPOS_ROOT_PATH = '/home/expo/'
|
REPOS_ROOT_PATH = '/home/expo/'
|
||||||
sys.path.append(REPOS_ROOT_PATH)
|
sys.path.append(REPOS_ROOT_PATH)
|
||||||
sys.path.append(REPOS_ROOT_PATH + 'troggle')
|
sys.path.append(REPOS_ROOT_PATH + 'troggle')
|
||||||
# Define the path to the django app (troggle in this case)
|
# Define the path to the django app (troggle in this case)
|
||||||
PYTHON_PATH = REPOS_ROOT_PATH + 'troggle/'
|
PYTHON_PATH = REPOS_ROOT_PATH + 'troggle/'
|
||||||
|
PHOTOS_YEAR = "2022"
|
||||||
TEMPLATES = [
|
TEMPLATES = [
|
||||||
{
|
{
|
||||||
'BACKEND': 'django.template.backends.django.DjangoTemplates',
|
'BACKEND': 'django.template.backends.django.DjangoTemplates',
|
||||||
@ -53,20 +62,22 @@ TEMPLATES = [
|
|||||||
],
|
],
|
||||||
'OPTIONS': {
|
'OPTIONS': {
|
||||||
'debug': 'DEBUG',
|
'debug': 'DEBUG',
|
||||||
'context_processors': [
|
'context_processors': [
|
||||||
'django.contrib.auth.context_processors.auth',
|
# django.template.context_processors.csrf, # is always enabled and cannot be removed, sets csrf_token
|
||||||
'core.context.troggle_context',
|
'django.contrib.auth.context_processors.auth', # knowledge of logged-on user & permissions
|
||||||
|
'core.context.troggle_context', # in core/troggle.py
|
||||||
'django.template.context_processors.debug',
|
'django.template.context_processors.debug',
|
||||||
|
#'django.template.context_processors.request', # copy of current request, added in trying to make csrf work
|
||||||
'django.template.context_processors.i18n',
|
'django.template.context_processors.i18n',
|
||||||
'django.template.context_processors.media',
|
'django.template.context_processors.media', # includes a variable MEDIA_URL
|
||||||
'django.template.context_processors.static',
|
'django.template.context_processors.static', # includes a variable STATIC_URL
|
||||||
'django.template.context_processors.tz',
|
'django.template.context_processors.tz',
|
||||||
'django.contrib.messages.context_processors.messages',
|
'django.contrib.messages.context_processors.messages',
|
||||||
],
|
],
|
||||||
'loaders': [
|
'loaders': [
|
||||||
'django.template.loaders.filesystem.Loader',
|
'django.template.loaders.filesystem.Loader',
|
||||||
'django.template.loaders.app_directories.Loader',
|
'django.template.loaders.app_directories.Loader', #For each app, inc admin, in INSTALLED_APPS, loader looks for /templates
|
||||||
# insert your TEMPLATE_LOADERS here
|
# insert your own TEMPLATE_LOADERS here
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@ -76,36 +87,50 @@ PUBLIC_SITE = True
|
|||||||
|
|
||||||
# This should be False for normal running
|
# This should be False for normal running
|
||||||
DEBUG = True
|
DEBUG = True
|
||||||
|
CACHEDPAGES = True # experimental page cache for a handful of page types
|
||||||
|
|
||||||
SURVEX_DATA = REPOS_ROOT_PATH + 'loser/'
|
SURVEX_DATA = REPOS_ROOT_PATH + 'loser/'
|
||||||
DRAWINGS_DATA = REPOS_ROOT_PATH + 'drawings/'
|
DRAWINGS_DATA = REPOS_ROOT_PATH + 'drawings/'
|
||||||
|
|
||||||
CAVERN = 'cavern'
|
# executables:
|
||||||
THREEDTOPOS = 'survexport'
|
CAVERN = 'cavern' # for parsing .svx files and producing .3d files
|
||||||
|
SURVEXPORT = 'survexport' # for parsing .3d files and producing .pos files
|
||||||
|
|
||||||
EXPOWEB = REPOS_ROOT_PATH + 'expoweb/'
|
EXPOWEB = REPOS_ROOT_PATH + 'expoweb/'
|
||||||
SURVEYS = REPOS_ROOT_PATH
|
#SURVEYS = REPOS_ROOT_PATH
|
||||||
SURVEY_SCANS = REPOS_ROOT_PATH + 'expofiles/surveyscans/'
|
SCANS_ROOT = REPOS_ROOT_PATH + 'expofiles/surveyscans/'
|
||||||
FILES = REPOS_ROOT_PATH + 'expofiles'
|
FILES = REPOS_ROOT_PATH + 'expofiles'
|
||||||
|
PHOTOS_ROOT = REPOS_ROOT_PATH + 'expofiles/photos/'
|
||||||
|
|
||||||
|
TROGGLE_PATH = Path(__file__).parent
|
||||||
|
TEMPLATE_PATH = TROGGLE_PATH / 'templates'
|
||||||
|
MEDIA_ROOT = TROGGLE_PATH / 'media'
|
||||||
|
JSLIB_ROOT = TROGGLE_PATH / 'media' / 'jslib' # used for CaveViewer JS utility
|
||||||
|
|
||||||
|
|
||||||
CAVEDESCRIPTIONS = os.path.join(EXPOWEB, "cave_data")
|
CAVEDESCRIPTIONS = os.path.join(EXPOWEB, "cave_data")
|
||||||
ENTRANCEDESCRIPTIONS = os.path.join(EXPOWEB, "entrance_data")
|
ENTRANCEDESCRIPTIONS = os.path.join(EXPOWEB, "entrance_data")
|
||||||
|
|
||||||
CACHEDIR = REPOS_ROOT_PATH + 'expowebcache/'
|
# CACHEDIR = REPOS_ROOT_PATH + 'expowebcache/'
|
||||||
THREEDCACHEDIR = CACHEDIR + '3d/'
|
# THREEDCACHEDIR = CACHEDIR + '3d/'
|
||||||
THUMBNAILCACHE = CACHEDIR + 'thumbs'
|
# THUMBNAILCACHE = CACHEDIR + 'thumbs'
|
||||||
|
|
||||||
PYTHON_PATH = REPOS_ROOT_PATH + 'troggle/'
|
PYTHON_PATH = REPOS_ROOT_PATH + 'troggle/'
|
||||||
|
PV = "python" + str(sys.version_info.major) + "." + str(sys.version_info.minor)
|
||||||
|
LIBDIR = Path(REPOS_ROOT_PATH) / 'lib' / PV
|
||||||
|
|
||||||
URL_ROOT = 'http://expo.survex.com/'
|
#Note that all these *_URL constants are not actually used in urls.py, they should be..
|
||||||
|
#URL_ROOT = 'http://expo.survex.com/'
|
||||||
|
URL_ROOT = '/'
|
||||||
DIR_ROOT = ''#this should end in / if a value is given
|
DIR_ROOT = ''#this should end in / if a value is given
|
||||||
EXPOWEB_URL = '/'
|
EXPOWEB_URL = '/'
|
||||||
SURVEYS_URL = '/survey_scans/'
|
SCANS_URL = '/survey_scans/'
|
||||||
EXPOFILES = urllib.parse.urljoin(REPOS_ROOT_PATH, 'expofiles/')
|
EXPOFILES = urllib.parse.urljoin(REPOS_ROOT_PATH, 'expofiles/')
|
||||||
PHOTOS_URL = urllib.parse.urljoin(URL_ROOT, '/photos/')
|
PHOTOS_URL = urllib.parse.urljoin(URL_ROOT, '/photos/')
|
||||||
|
|
||||||
# MEDIA_URL is used by urls.py in a regex. See urls.py & core/views/surveys.py
|
# MEDIA_URL is used by urls.py in a regex. See urls.py & core/views_surveys.py
|
||||||
MEDIA_URL = '/site_media/'
|
MEDIA_URL = '/site_media/'
|
||||||
|
|
||||||
MEDIA_ROOT = REPOS_ROOT_PATH + '/troggle/media/'
|
|
||||||
|
|
||||||
STATIC_URL = urllib.parse.urljoin(URL_ROOT , '/static/') # used by Django admin pages. Do not delete.
|
STATIC_URL = urllib.parse.urljoin(URL_ROOT , '/static/') # used by Django admin pages. Do not delete.
|
||||||
JSLIB_URL = urllib.parse.urljoin(URL_ROOT , '/javascript/') # always fails, try to revive it ?
|
JSLIB_URL = urllib.parse.urljoin(URL_ROOT , '/javascript/') # always fails, try to revive it ?
|
||||||
@ -116,5 +141,23 @@ JSLIB_URL = urllib.parse.urljoin(URL_ROOT , '/javascript/') # always fails, try
|
|||||||
LOGFILE = '/var/log/troggle/troggle.log'
|
LOGFILE = '/var/log/troggle/troggle.log'
|
||||||
IMPORTLOGFILE = '/var/log/troggle/import.log'
|
IMPORTLOGFILE = '/var/log/troggle/import.log'
|
||||||
|
|
||||||
# add in 290, 291, 358 when they don't make it crash horribly
|
# add in 358 when they don't make it crash horribly
|
||||||
NOTABLECAVESHREFS = [ "264", "258", "204", "76", "107"]
|
NOTABLECAVESHREFS = [ "290", "291", "359", "264", "258", "204", "76", "107"]
|
||||||
|
|
||||||
|
# Sanitise these to be strings as all other code is expecting strings
|
||||||
|
# and we have not made the change to pathlib Path type in the other localsettings-* variants yet.
|
||||||
|
CAVEDESCRIPTIONS = os.fspath(CAVEDESCRIPTIONS)
|
||||||
|
ENTRANCEDESCRIPTIONS = os.fspath(ENTRANCEDESCRIPTIONS)
|
||||||
|
LOGFILE = os.fspath(LOGFILE)
|
||||||
|
#SURVEYS = os.fspath(SURVEYS)
|
||||||
|
EXPOWEB = os.fspath(EXPOWEB)
|
||||||
|
DRAWINGS_DATA = os.fspath(DRAWINGS_DATA)
|
||||||
|
SURVEX_DATA = os.fspath(SURVEX_DATA)
|
||||||
|
REPOS_ROOT_PATH = os.fspath(REPOS_ROOT_PATH)
|
||||||
|
TEMPLATE_PATH = os.fspath(TROGGLE_PATH)
|
||||||
|
MEDIA_ROOT = os.fspath(MEDIA_ROOT)
|
||||||
|
JSLIB_ROOT = os.fspath(JSLIB_ROOT)
|
||||||
|
SCANS_ROOT = os.fspath(SCANS_ROOT)
|
||||||
|
LIBDIR = os.fspath(LIBDIR)
|
||||||
|
|
||||||
|
print(" + finished importing troggle/localsettings.py")
|
Loading…
Reference in New Issue
Block a user