Make Keel executable from a package
User story: I am an LDH operator. I want install Keel as a package, and execute all endpoints, so I can integrate it with my system (Nginx etc).
Suggested solution: Update Keel's Python packaging to expose all executable endpoints. Similarly for the debified version.
Success:
All the endpoints listed in https://source.puri.sm/liberty/ldh_middleware/blob/master/SETUP.md are executable:
-
./manage.py collectstatic
-
./manage.py migrate
-
./manage.py createsuperuser
The Celery endpoint referenced in https://source.puri.sm/liberty/ldh_middleware/blob/master/conf/supervisord/purist_middleware_monitor.conf is accessible to Supervisor:
/opt/purist/middleware_virtualenv/bin/celery worker -B --app middleware --scheduler django_celery_beat.schedulers:DatabaseScheduler
The UWSGI module referenced in https://source.puri.sm/liberty/ldh_middleware/blob/master/conf/uwsgi_emperor_vassals/purist_middleware.ini is accessible to UWSGI Emperor:
virtualenv = /opt/purist/middleware_virtualenv
env = DJANGO_SETTINGS_MODULE=middleware.settings
module = middleware.wsgi:application
The UWSGI socket created above and referenced in https://source.puri.sm/liberty/ldh_middleware/blob/master/conf/nginx/purist_middleware is accessible to Nginx:
-
unix:/var/opt/purist/middleware/uwsgi.sock;
(this may be trivial once 5 is solved) -
I can install the ldh_middleware Python package with pip and follow the instructions in https://source.puri.sm/liberty/ldh_middleware/blob/master/SETUP.md (adjusting for installation locations) to get a working site.
-
I can install the ldh_middleware deb file with gdebi and follow the instructions in https://source.puri.sm/liberty/ldh_middleware/blob/master/SETUP.md (adjusting for installation locations) to get a working site.
Notes:
- Defining and installing non-Python dependencies is not required. Automating the installation steps is not required.