lp:~soren/nova/libvirt-reconnect

Created by Soren Hansen and last modified
Get this branch:
bzr branch lp:~soren/nova/libvirt-reconnect
Only Soren Hansen can upload to this branch. If you are Soren Hansen please log in for upload directions.

Branch merges

Related bugs

Related blueprints

Branch information

Owner:
Soren Hansen
Project:
OpenStack Compute (nova)
Status:
Merged

Recent revisions

260. By Soren Hansen

Call getInfo() instead of getVersion() on the libvirt connection object. virConnectGetVersion was not exposed properly in the python bindings until quite recently, so this makes us rather more backwards compatible.

259. By Soren Hansen

Detect if libvirt connection has been broken and reestablish it.

258. By Eric Day

Dead code removal.

257. By Vish Ishaya

Fixes issue with the same ip being assigned to multiple instances.

256. By Michael Gundlach

Initial support for Rackspace API /image requests. They will eventually be backed by Glance.

Because we don't expect Glance to support non-public images for the Austin release, all we support is index() and show().

The WSGI controller uses a service to interact with the image store (the "ImageService"). Eventually it will use a GlanceImageService, but since Glance isn't implemented yet it's hard coded to use a LocalImageService for testing.

The ImageService maps URIs to image data (because Glance will be the canonical backend and that's how Glance does it), but the Rackspace API maps ids to image data. So the images.Controller stores a mapping in the global Redis service to convert from URIs to ids.

Courtesy of whatthecommit.com:

(\ /)
(O.o)
(> <) Bunny approves these changes.

255. By Michael Gundlach

Fix a pep8 violation.

254. By Soren Hansen

Ensure that --gid and --uid options work for both twisted and non-twisted daemons.

253. By Vish Ishaya

Fixes an error in setup_compute_network that was causing network setup to fail.

252. By Ewan Mellor

Rework virt.xenapi's concurrency model. There were many places where we were
inadvertently blocking the reactor thread. The reworking puts all calls to
XenAPI on background threads, so that they won't block the reactor thread.

Long-lived operations (VM start, reboot, etc) are invoked asynchronously
at the XenAPI level (Async.VM.start, etc). These return a XenAPI task. We
relinquish the background thread at this point, so as not to hold threads in
the pool for too long, and use reactor.callLater to poll the task.

This combination of techniques means that we don't block the reactor thread at
all, and at the same time we don't hold lots of threads waiting for
long-running operations.

There is a FIXME in here: get_info does not conform to these new rules.
Changes are required in compute.service before we can make get_info
non-blocking.

251. By justinsb

Check exit codes when spawning processes by default
Also pass --fail to curl so that it sets exit code when download fails

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
Stacked on:
lp:~hudson-openstack/nova/trunk
This branch contains Public information 
Everyone can see this information.

Subscribers