Fix uwsgi configuration when using venv

Without this fix, the following step will fail
bifrost-ironic-install : Ensure service project is present
and you will have errors in uwsgi like

...: Traceback (most recent call last):
...:   File "/var/www/keystone/public", line 6, in <module>
...:     from keystone.server.wsgi import initialize_public_application
...: ImportError: No module named keystone.server.wsgi

(extracted from journalctl -u uwsgi output)

Change-Id: If238ceb3d6309e491235aa63e1adccd7d0606be3
This commit is contained in:
Olivier Bourdon 2018-07-04 12:49:01 +02:00
parent 15774c574e
commit b0df38c46d
3 changed files with 7 additions and 0 deletions

View File

@ -16,6 +16,7 @@
- name: "If VENV is set in the environment, enable installation into venv"
set_fact:
enable_venv: true
uwsgi_venv: "{{ bifrost_venv_env.get('VIRTUAL_ENV', '') }}"
when: lookup('env', 'VENV') | length > 0
- name: "Get uwsgi install location"

View File

@ -6,6 +6,9 @@ threads = 2
plugin = python
no-orphans = true
chmod-socket = 660
{% if uwsgi_venv is defined and uwsgi_venv | length > 0 %}
virtualenv = {{ uwsgi_venv }}
{% endif %}
socket = /run/uwsgi/keystone-admin.socket
pidfile = /run/uwsgi/keystone-admin.pid

View File

@ -6,6 +6,9 @@ threads = 2
plugin = python
no-orphans = true
chmod-socket = 660
{% if uwsgi_venv is defined and uwsgi_venv | length > 0 %}
virtualenv = {{ uwsgi_venv }}
{% endif %}
socket = /run/uwsgi/keystone-public.socket
pidfile = /run/uwsgi/keystone-public.pid