From b581865873f62821b21c50a0f445d9c4a517b5ec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alexis=20M=C3=A9taireau?= Date: Fri, 5 Jan 2018 22:36:31 +0100 Subject: [PATCH] Fix the supervisord template. The script was relying on the presence of an environment variable, which is only set when the virtualenv is activated. But a virtualenv does not have to be activated to work (it's possible to call the python command directly). This fixes it by relying on `sys.executable` which should be correct at all times. Fixes #306 --- CHANGELOG.rst | 5 ++++- ihatemoney/conf-templates/supervisord.conf.j2 | 2 +- ihatemoney/manage.py | 4 +++- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index de1356e5..44c26417 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -6,7 +6,10 @@ This document describes changes between each past release. 2.1 (unreleased) ---------------- -- Nothing changed yet. +Fixed +===== + +- Fix the generation of the supervisord template (#306) 2.0 (2017-12-27) diff --git a/ihatemoney/conf-templates/supervisord.conf.j2 b/ihatemoney/conf-templates/supervisord.conf.j2 index fa16c0cf..605f39d9 100644 --- a/ihatemoney/conf-templates/supervisord.conf.j2 +++ b/ihatemoney/conf-templates/supervisord.conf.j2 @@ -1,5 +1,5 @@ [program:ihatemoney] -command={{ venv_path }}/bin/gunicorn -c /etc/ihatemoney/gunicorn.conf.py ihatemoney.wsgi:application +command={{ bin_path }}/gunicorn -c /etc/ihatemoney/gunicorn.conf.py ihatemoney.wsgi:application user=ihatemoney autostart=true autorestart=true diff --git a/ihatemoney/manage.py b/ihatemoney/manage.py index 797e6c4b..99828900 100755 --- a/ihatemoney/manage.py +++ b/ihatemoney/manage.py @@ -49,9 +49,11 @@ class ConfigTemplate(Command): os.path.join('conf-templates/', config_file) + '.j2' ).decode('utf-8') + bin_path = os.path.join(os.path.dirname(sys.executable)) + print(Template(template_content).render( pkg_path=os.path.abspath(os.path.dirname(__file__)), - venv_path=os.environ.get('VIRTUAL_ENV'), + bin_path=bin_path, secret_key=self.gen_secret_key(), ))