diff --git a/README.txt b/README.txt index 4b9c228..9480f9b 100644 --- a/README.txt +++ b/README.txt @@ -1,4 +1,4 @@ -Updated 10 April 2021 +Updated 3 May 2021 Troggle is an application for caving expedition data management, originally created for use on Cambridge University Caving Club (CUCC)expeditions @@ -46,14 +46,13 @@ Key-exchange instructions: http://expo.survex.com/handbook/computing/keyexchange If you want to work on the source code and be able to commit, your account will need to be added to the troggle project members list. Contact wookey at wookware dot org to get this set up. -Next, you need to fill in your local settings. Copy localsettingsWSL.py +Next, you need to fill in your local settings. Copy _deploy/WSL/localsettingsWSL.py to a new file called localsettings.py and edit it and settings.py to match your machine's file locations. Follow the instructions contained in the file to fill out your settings. -{ *TO BE FIXED* - The localsettings-expo-live.py is the python2.7 settings for the server. - These are all very out of date and need fixing: +{ in _deploy/old/ we have these which are all very out of date: + localsettings-expo-live.py is the python2.7 settings for the server. localsettingsubuntu.py localsettingsdocker.py localsettingswindows.py @@ -62,8 +61,7 @@ Follow the instructions contained in the file to fill out your settings. Python3, Django, and Database setup ----------------------------------- -First version of troggle using python3 required Django 1.8.19 (16 June 2019) -We are now using Django 2.2.19 +We are now using Django 2.2.19 Read this: https://docs.djangoproject.com/en/3.0/topics/install/ diff --git a/debian/serversetup b/_deploy/debian/serversetup similarity index 100% rename from debian/serversetup rename to _deploy/debian/serversetup diff --git a/debian/sitecustomize.py b/_deploy/debian/sitecustomize.py similarity index 100% rename from debian/sitecustomize.py rename to _deploy/debian/sitecustomize.py diff --git a/_deploy/debian/this-is-the-live-expo.survex.com-system.txt b/_deploy/debian/this-is-the-live-expo.survex.com-system.txt new file mode 100644 index 0000000..e69de29 diff --git a/debian/wookey-exposerver-recipe.txt b/_deploy/debian/wookey-exposerver-recipe.txt similarity index 100% rename from debian/wookey-exposerver-recipe.txt rename to _deploy/debian/wookey-exposerver-recipe.txt diff --git a/docker/Dockerfile b/_deploy/docker/Dockerfile similarity index 100% rename from docker/Dockerfile rename to _deploy/docker/Dockerfile diff --git a/docker/Dockerfile-django-1.4.22-wheezy b/_deploy/docker/Dockerfile-django-1.4.22-wheezy similarity index 100% rename from docker/Dockerfile-django-1.4.22-wheezy rename to _deploy/docker/Dockerfile-django-1.4.22-wheezy diff --git a/docker/Dockerfile-django-1.5.12-jessie b/_deploy/docker/Dockerfile-django-1.5.12-jessie similarity index 100% rename from docker/Dockerfile-django-1.5.12-jessie rename to _deploy/docker/Dockerfile-django-1.5.12-jessie diff --git a/docker/README.md b/_deploy/docker/README.md similarity index 100% rename from docker/README.md rename to _deploy/docker/README.md diff --git a/docker/backports.list b/_deploy/docker/backports.list similarity index 100% rename from docker/backports.list rename to _deploy/docker/backports.list diff --git a/docker/compose/mysql.env b/_deploy/docker/compose/mysql.env similarity index 100% rename from docker/compose/mysql.env rename to _deploy/docker/compose/mysql.env diff --git a/docker/docker-cmd b/_deploy/docker/docker-cmd similarity index 100% rename from docker/docker-cmd rename to _deploy/docker/docker-cmd diff --git a/docker/docker-compose.yml b/_deploy/docker/docker-compose.yml similarity index 100% rename from docker/docker-compose.yml rename to _deploy/docker/docker-compose.yml diff --git a/docker/mysql.env b/_deploy/docker/mysql.env similarity index 100% rename from docker/mysql.env rename to _deploy/docker/mysql.env diff --git a/docker/requirements.txt b/_deploy/docker/requirements.txt similarity index 100% rename from docker/requirements.txt rename to _deploy/docker/requirements.txt diff --git a/docker/requirements.txt.dj-1.4.22 b/_deploy/docker/requirements.txt.dj-1.4.22 similarity index 100% rename from docker/requirements.txt.dj-1.4.22 rename to _deploy/docker/requirements.txt.dj-1.4.22 diff --git a/docker/requirements.txt.dj-1.5.12 b/_deploy/docker/requirements.txt.dj-1.5.12 similarity index 100% rename from docker/requirements.txt.dj-1.5.12 rename to _deploy/docker/requirements.txt.dj-1.5.12 diff --git a/docker/requirements.txt.dj-1.6.11 b/_deploy/docker/requirements.txt.dj-1.6.11 similarity index 100% rename from docker/requirements.txt.dj-1.6.11 rename to _deploy/docker/requirements.txt.dj-1.6.11 diff --git a/docker/requirements.txt.dj-1.7.11 b/_deploy/docker/requirements.txt.dj-1.7.11 similarity index 100% rename from docker/requirements.txt.dj-1.7.11 rename to _deploy/docker/requirements.txt.dj-1.7.11 diff --git a/docker/requirements.txt.dj-1.8.19 b/_deploy/docker/requirements.txt.dj-1.8.19 similarity index 100% rename from docker/requirements.txt.dj-1.8.19 rename to _deploy/docker/requirements.txt.dj-1.8.19 diff --git a/localsettingsdocker.py b/_deploy/old/localsettingsdocker.py similarity index 100% rename from localsettingsdocker.py rename to _deploy/old/localsettingsdocker.py diff --git a/localsettingspotatohut.py b/_deploy/old/localsettingspotatohut.py similarity index 100% rename from localsettingspotatohut.py rename to _deploy/old/localsettingspotatohut.py diff --git a/localsettingsserver.py b/_deploy/old/localsettingsserver.py similarity index 100% rename from localsettingsserver.py rename to _deploy/old/localsettingsserver.py diff --git a/localsettingsubuntu.py b/_deploy/old/localsettingsubuntu.py similarity index 100% rename from localsettingsubuntu.py rename to _deploy/old/localsettingsubuntu.py diff --git a/_deploy/wsl/check-for-later-copy-of-localsettings.WSL.txt b/_deploy/wsl/check-for-later-copy-of-localsettings.WSL.txt new file mode 100644 index 0000000..e69de29 diff --git a/settings.py b/settings.py index a89f6ee..7f53835 100644 --- a/settings.py +++ b/settings.py @@ -139,8 +139,9 @@ INSTALLED_APPS = ( ) # See the recommended order of these in https://docs.djangoproject.com/en/2.2/ref/middleware/ -# Note that tis is a radically different onion architecture though it looks the same, +# Note that this is a radically different onion architecture from earlier versions though it looks the same, # see https://docs.djangoproject.com/en/2.0/topics/http/middleware/#upgrading-pre-django-1-10-style-middleware +# Seriously, read this: https://www.webforefront.com/django/middlewaredjango.html which is MUCH BETTER than the docs MIDDLEWARE = [ #'django.middleware.security.SecurityMiddleware', # SECURE_SSL_REDIRECT and SECURE_SSL_HOST # we don't use this 'django.middleware.gzip.GZipMiddleware', # not needed when expofiles and photos served by apache diff --git a/wookey-exposerver-recipe.txt b/wookey-exposerver-recipe.txt deleted file mode 100644 index f548060..0000000 --- a/wookey-exposerver-recipe.txt +++ /dev/null @@ -1,84 +0,0 @@ -adduser expo -apt install openssh-server mosh tmux mc zile emacs-nox mc most ncdu -apt install python-django apache2 mysql-server survex make rsync -apt install libjs-openlayers make -apt install git mercurial mercurial-server? - -for boe: -apt install libcgi-session-perl libcrypt-passwdmd5-perl libfile-slurp-perl libgit-wrapper-perl libhtml-template-perl libhtml-template-pro-perl libmime-lite-perl libtext-password-pronounceable-perl libtime-parsedate-perl libuuid-tiny-perl libcrypt-cracklib-perl - -apt install ufraw for PEF image decoding. -sudo apt install python-django python-django-registration e fonts-freefont-ttf libapache2-mod-wsgi python3-gdbm -# sudo apt install python-django-imagekit python-django-tinymc - -obsolete-packages: bins (move to jigl?) - older python-django? -backports: survex therion -not-packaged: caveview - - -make these dirs available at top documentroot: -cuccfiles -expofiles -loser -tunneldata -troggle -expoweb -boc/boe - -config -containing: - -setup apache configs for cucc and expo -#disable default website -a2dissite 000-default -a2ensite cucc -a2ensite expo -a2enmod cgid - - -Boe config: -Alias /boe /home/expo/boe/boc/boc.pl - - AddHandler cgi-script .pl - SetHandler cgi-script - Options +ExecCGI - Require all granted - -And remember to set both program and data dir to be -www-data:www-data -(optionally make file group read/write by treasurer account) -create empty repo by clicking create in boe interface -then set names in 'settings' - -Set up mysql (as root) -mysql -p -CREATE DATABASE troggle; -GRANT ALL PRIVILEGES ON troggle.* TO 'expo'@'localhost' IDENTIFIED BY 'somepassword'; - -install django: -sudo apt install python-django python-django-registration python-django-imagekit python-django-tinymce fonts-freefont-ttf libapache2-mod-wsgi - -python-django-imagekit comes from https://salsa.debian.org/python-team/modules/python-django-imagekit -python-django-tinymce comes from https://salsa.debian.org/python-team/modules/python-django-tinymce - -need fonts-freefont-ttf (to have truetype freesans available for troggle via PIL) -need libapache2-mod-wsgi for apache wsgi support. - -On stretch the django 1.10 is no use so get rid of that: -apt remove python3-django python-django python-django-common python-django-doc - -Then replace with django 1.7 (Needs to be built for stretch) -apt install python-django python-django-common python-django-doc -apt install python-django-registration python-django-imagekit python-django-tinymce - -then hold them to stop them being upgraded by unattended upgrades: -echo "python-django hold" | sudo dpkg --set-selections -echo "python-django-common hold" | sudo dpkg --set-selections -echo "python-django-doc hold" | sudo dpkg --set-selections - -Optimizing server -I've tweaked the apache and mysql settings to make them a bit more suitable for a small machine. Seems to have shaved 200MB or so off the idling footprint. -https://www.narga.net/optimizing-apachephpmysql-low-memory-server/ - -(just discovered 'ab' for running apache performance tests - handy).