Fix msg version type sent to cells RPC API

Regression fix from 6b16c8731c44e4a6c80b803f3e8afdd88386d577, cannot
build instances through cells.

The RPC dispatcher dislikes floats for version numbers.

bug 1190371

Change-Id: I18994ce8a524f88910cfe37c9b302296ce30102f
Fix a race where a soft deleted instance might be removed by mistake

When a soft deleted instance is restored there is a tiny risk that it
might be deleted if the reclaim periodic task runs at the same time.
This happens because the restore operation sets deleted_at to None
which makes the reclaim job think it is ok to delete the instance.

This can be resolved by restricting reclaims to only those instances
whose task_state is None.

Resolves bug 1186243.

Change-Id: Ia138e2d504b7482c46900583f019a32c70513245
Enhance unit test code coverage for availability zone

In current unit test code for availability zone, the update and
delete operation for AZ is missing. So this review submits two
test methods to test AZ update and delete.

Change-Id: Id98756351f0ecdf5405b9dfea2602a9aee0c5522
Add missing exception to cell_update()

Add missing CellNotFound exception to
cell_update() in db.sqlalchemy.api,
which expected from this method.

Change-Id: I25699a08b581922b13ae62708486bdee6f8b0ac6
Fixes test_config_drive unittest

Fixes test_detail_servers in the config drive unittest where the wrong db
stub was set which resulted in an empty server list being returned.
Fixes asserTrue typo which was never executed because of the empty server
list bug

Change-Id: I160e91c55e60e3636804b4d2b31800386a21538d
Remove unused method in VMware driver.

list_interface method in VMware  driver isn't used any where.

Fix bug #1187251

Change-Id: Idc7cee5ab1d0c5b4ebf57ca28511e3b7b4a85240
Fix race conditions with xenstore

xenapi code updates xenstore using _add_to_param_xenstore(), which has
to ensure a key doesn't exist before it can add the same key.  However,
if you have 2 calls at the same time, this is racey.

Fixes bug 1190026

Change-Id: I545b7a9fab0bc4c3749bc75387ed3f6ff27a512f
Use Python 3.x compatible octal literals

Python 3.x deprecated octal literals in the form
0755. Use 0o755  instead which works at least
with Python 2.6 and newer.

Change-Id: I6300e61d78619d8310e0ea7ddc8b46b94c1ef833
Merge "Fix a race where a soft deleted instance might be removed by mistake"
Merge "Add missing exception to cell_update()"
Merge "Fixes test_config_drive unittest"
Merge "Use Python 3.x compatible octal literals"
Merge "Fix race conditions with xenstore"
Merge "Remove unused method in VMware driver."
Merge "Fix msg version type sent to cells RPC API"
Merge "Enhance unit test code coverage for availability zone"
Merge remote-tracking branch 'm_src_repo/citrix-fixes' into build-temp