yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #72949
[Bug 1763204] Re: wsgi.py is missing
Reviewed: https://review.openstack.org/561802
Committed: https://git.openstack.org/cgit/openstack/horizon/commit/?id=0ca736e5da47413db6749053e6083b82cbb24825
Submitter: Zuul
Branch: master
commit 0ca736e5da47413db6749053e6083b82cbb24825
Author: Adrian Turjak <adriant@xxxxxxxxxxxxxxx>
Date: Tue Apr 17 18:27:27 2018 +1200
Create new wsgi.py file and deprecate old file
Django 1.4 stopped creating django.wsgi files and the common
practice now for a while has been a wsgi.py since it is actually
python code, and should actually be importable.
Right now someone has to copy and rename the existing file if they
want to use it with a server like gunicorn.
This patch adds a new file in location that is importable via python
and adds a deprecation log to the old one.
This also updates the wsgi generation commands to instead create
'horizon_wsgi.py' and have the apache conf generation also use that
or the default wsgi file.
Change-Id: I0f8bd16c8973ad23bcd8f73b54584dc69e5aed0c
Closes-Bug: #1763204
** Changed in: horizon
Status: In Progress => Fix Released
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Dashboard (Horizon).
https://bugs.launchpad.net/bugs/1763204
Title:
wsgi.py is missing
Status in OpenStack Dashboard (Horizon):
Fix Released
Bug description:
Horizon was likely started very early along with Django, and thus has the old format wsgi file as "django.wsgi".
https://github.com/openstack/horizon/tree/master/openstack_dashboard/wsgi
This is not how django names this file anymore, nor how it is really
used.
https://stackoverflow.com/questions/20035252/difference-between-wsgi-py-and-django-wsgi
https://docs.djangoproject.com/en/1.11/howto/deployment/wsgi/modwsgi/
The expectation is having a wsgi.py file somewhere along your
importable python path. Normally this is in the same place as your
settings.py file when building a default django project.
Ideally we should rename and move the file to a place it is easier to import from:
horizon/openstack_dashboard/wsgi/django.wsgi horizon/openstack_dashboard/wsgi.py
gunicorn cannot import and run it because it isn't a '.py' file, and
is one of the most popular wsgi servers around.
By doing the above move and rename the file can now be imported and run as:
gunicorn openstack_dashboard.wsgi:application
NOTE: This will likely break anyone using it right now. We may instead want to copy the file to the new location and add a deprecation log into the old one with a notice to remove in 2 cycles. Ideally also document that deployers should be using the new file.
To manage notifications about this bug go to:
https://bugs.launchpad.net/horizon/+bug/1763204/+subscriptions
References