nova/nova
melanie witt 791fa595e6 Handle websockify v0.9.0 in console proxy
In websockify v0.9.0, the 'socket' staticmethod  moved from the
websockfiy.websocket.WebSocketServer class to the
websockify.websockifyserver.WebSockifyServer class [1][2], so our
import of the top-level module is no longer sufficient for accessing
the 'socket' method [3] when using v0.9.0:

 AttributeError: module 'websockify' has no attribute 'WebSocketServer'

This adds a try_import from the v0.9.0 location and uses
WebSockifyServer.socket if the module is present. Otherwise, it
will fall back on the old location. This way, we are able to run with
websockify v0.9.0 and earlier versions with the same code.

Partial-Bug: #1840788

[1] 8a69762249
[2] e47591f4aa
[3] https://github.com/novnc/websockify/blob/v0.9.0/websockify/__init__.py

Change-Id: I4a50e2f772101315140df43910be2e3f69a63b73
2019-08-22 15:53:29 +00:00
..
api Merge "Libvirt: add support for vPMU configuration." 2019-08-21 11:15:30 +00:00
cmd Add blocker migration for completing services.uuid migration 2019-08-20 18:15:19 -04:00
common
compute Merge "Libvirt: add support for vPMU configuration." 2019-08-21 11:15:30 +00:00
conductor Execute TargetDBSetupTask 2019-08-13 16:13:33 +00:00
conf config: remove deprecated checksum options 2019-08-15 11:47:51 -04:00
console Handle websockify v0.9.0 in console proxy 2019-08-22 15:53:29 +00:00
db Add blocker migration for completing services.uuid migration 2019-08-20 18:15:19 -04:00
hacking hacking: Resolve W605 (invalid escape sequence) 2019-06-24 14:24:06 -05:00
image hacking: Resolve W503 (line break occurred before a binary operator) 2019-06-24 14:24:06 -05:00
ipv6
keymgr
locale Imported Translations from Zanata 2019-03-22 06:26:27 +00:00
network Merge "Move router advertisement daemon restarts to privsep." 2019-08-20 04:56:59 +00:00
notifications Update api-ref location 2019-07-22 19:17:28 +02:00
objects Merge "Libvirt: add support for vPMU configuration." 2019-08-21 11:15:30 +00:00
pci hacking: Resolve W605 (invalid escape sequence) 2019-06-24 14:24:06 -05:00
policies Add host and hypervisor_hostname flag to create server 2019-07-09 22:55:16 +08:00
privsep Move router advertisement daemon restarts to privsep. 2019-08-16 11:24:25 +01:00
scheduler Merge "Update comments in HostManager._get_instance_info" 2019-08-12 12:55:53 +00:00
servicegroup [Trivial fix]Remove unnecessary slash 2019-05-06 16:23:59 +08:00
tests Merge "Move setting of device trust to privsep." 2019-08-21 17:31:59 +00:00
virt Merge "Libvirt: add support for vPMU configuration." 2019-08-21 11:15:30 +00:00
vnc xvp: Remove use of '_LI' marker 2019-06-19 10:04:45 +01:00
volume Keep attach_mode as top-level field in _translate_attachment_ref 2019-05-22 09:09:37 +00:00
__init__.py Eventlet monkey patching should be as early as possible 2019-03-22 09:27:16 +00:00
availability_zones.py Always pass HostAPI to get_availability_zones 2019-04-26 15:30:48 -04:00
baserpc.py
block_device.py hacking: Resolve W605 (invalid escape sequence) 2019-06-24 14:24:06 -05:00
cache_utils.py
config.py Delete the placement code 2019-04-28 20:06:15 +00:00
context.py Merge "Move default policy target" 2019-07-27 00:32:20 +00:00
crypto.py
debugger.py
exception.py Libvirt: add support for vPMU configuration. 2019-08-20 14:41:57 +00:00
exception_wrapper.py
filters.py filters: Stop handling cells v1 2019-06-12 16:09:46 +01:00
hooks.py
i18n.py
loadables.py
manager.py
monkey_patch.py Bump to hacking 1.1.0 2019-04-12 16:23:49 +01:00
policy.py Move default policy target 2019-06-03 16:44:50 +01:00
profiler.py
quota.py Log quota legacy method warning only if counting from placement 2019-06-17 21:31:53 +00:00
rpc.py Remove unnecessary wrapper 2019-05-29 17:14:13 +01:00
safe_utils.py
service.py Remove nova-consoleauth 2019-07-05 15:04:47 +00:00
service_auth.py
test.py Tests: autospecs all the mock.patch usages 2019-08-19 09:43:10 -05:00
utils.py [Trivial]Remove unused helper filter_and_format_resource_metadata 2019-08-13 09:39:25 +08:00
version.py
weights.py Per aggregate scheduling weight 2019-01-21 11:48:44 +08:00
wsgi.py