prepare installable debian package
Things to consider:
-
CHANGELOG must be available in the source-code (deb package must have a changelog) -
configuration files should be in /etc/smasch/. It should consist at least of:local_settings.py,gunicorn.socket. The files should be symlinked to source files. Config files must have 0600 privileges (database credentials are in plain text) -
smasch sources should be located at /usr/lib/smasch/(- /opt/ shouldn't be used by packages according to debian/lintian rules)/opt/smasch/ -
log files should go to /var/log/smasch/. There should besmasch.logandgunicorn.log. Consider rotation of log files. -
smasch sources should be owned by user smasch:smasch -
gunicorn service should be created together with the installation. gunicornservice should be run by usersmasch:smasch -
the basic installation should maybe depend on the sqllitedb (check how difficult it is to use with current migration scripts), however database should be configured bydbconfig-common(https://www.debian.org/doc/manuals/dbconfig-common/ch-develguide.html) - don't introduce nginx proxy - describe it in the documentation
- statics/media would have to be served by gunicorn - describe in documentation how to do it with nginx
Edited by Piotr Gawron