Merge "Fix exception handling in libvirt attach_volume()"
Merge "Remove return values from some compute RPC methods"
Merge "Ensure instance is moved to ERROR on suspend failure"
Merge "Convert fixed_ips to using instance_uuid."
Merge "Send a full instance via rpc for finish_resize."
Merge "Enhance nova-manage to set flavor extra specs"
Send a full instance via rpc for finish_revert_resize.

Change the finish_revert_resize method of the compute rpc API to take
a full instance over rpc instead of just the instance UUID.
This cuts down on database access needed by nova-compute.

Part of blueprint no-db-messaging.

Change-Id: Ibe2f8b990cc8f2a3d05e8ba8216a1e74cbcfb67b
Send a full instance via rpc for get_diagnostics.

Change the get_diagnostics method of the compute rpc API to take
a full instance over rpc instead of just the instance UUID.
This cuts down on database access needed by nova-compute.

Part of blueprint no-db-messaging.

Change-Id: Ic4db237849230899ad5f2f0780d4c237895a6631
Remove get_instance_disk_info from compute rpcapi.

This method is no longer used in any current code, so remove it from the
client side code for the rpcapi.  The server-side code remains (the
compute manager) for backwards compatibility with older versions.

This method was previously used by the scheduler, but was removed by
some refactoring done in cac332c39645286a11c009094a86f62d02752183.

Change-Id: Icb11001ac0880ca8df67b4dd9f0fe1eaca7fa3bb
Send a full instance via rpc for get_vnc_console.

Change the get_vnc_console method of the compute rpc API to take
a full instance over rpc instead of just the instance UUID.
This cuts down on database access needed by nova-compute.

Part of blueprint no-db-messaging.

Change-Id: I4443e65fd6a9aafdad21fda63ef04a03428288a9
Send a full instance via rpc for inject_file.

Change the inject_file method of the compute rpc API to take
a full instance over rpc instead of just the instance UUID.
This cuts down on database access needed by nova-compute.

Part of blueprint no-db-messaging.

Change-Id: Ife38a87cb8a597b40b2b87d9a6a8c7e81d4439c4
Send a full instance via rpc for inject_network_info.

Change the inject_network_info method of the compute rpc API to take
a full instance over rpc instead of just the instance UUID.
This cuts down on database access needed by nova-compute.

Part of blueprint no-db-messaging.

Change-Id: I1bcf55e2819be321c3ea0a64fe136cd993a2443b
Send a full instance via rpc for post_live_migration_at_destination.

Change the post_live_migration_at_destination method of the compute
rpc API to take a full instance over rpc instead of just
the instance UUID.  This cuts down on database access needed
by nova-compute.

The method got moved in rpcapi.py, but that was just to restore
alphabetical order.

Part of blueprint no-db-messaging.

Change-Id: Ib36cb065f838f644e97b6e82b39409737df15558
Make instance_uuid backwards compat actually work.

In some refactoring of the decorator modifications I made for
eebc64f949ccb2acb7462efc18f538f1827985af, I ended up breaking the case
where an instance_uuid was passed to one of the methods that is supposed
to be able to accept either an instance or instance_uuid.  Oops.  :-(

This patch makes them work again, and adds one unit test that
verifies that it works.

These decorators are really ugly right now, but keep in mind that the
2-version stuff is temporary.  As soon as this patch series is finished
(changing methods to take an instance), these decorators will get
simplified.

Part of blueprint no-db-messaging.

Change-Id: Ic1b1269d90e147035c4eb7b4bd47de81eff3ffdc
Send a full instance in power_off_instance and stop_instance.

Change the power_off_instance and stop_instance methods of the compute
rpc API to take a full instance over rpc instead of just
the instance UUID.  This cuts down on database access needed
by nova-compute.

Part of blueprint no-db-messaging.

Change-Id: I641d5e7941c7de430c0ca3c9b961f967d947d963
Send a full instance in power_on_instance and start_instance.

Change the power_on_instance and start_instance methods of the compute
rpc API to take a full instance over rpc instead of just
the instance UUID.  This cuts down on database access needed
by nova-compute.

Part of blueprint no-db-messaging.

Change-Id: I5a95e72c6441f47f014dbcd52f346e8d2e94069c
Send a full instance in pre_live_migration.

Change the pre_live_migration method of the compute
rpc API to take a full instance over rpc instead of just
the instance UUID.  This cuts down on database access needed
by nova-compute.

Part of blueprint no-db-messaging.

Change-Id: Ib628d375254fc1539cd79ceaaad83c1c326863b4
Merge "Include architecture in instance base options passed to the scheduler"
Only enforce valid uuids if a uuid is passed.

This fixes bug 1029721 which was causing instance spawn failures.

Change-Id: Iab7fdb063874972e0bcd91c51bfd0e5b49e8023c
use REDIRECT to forward local metadata request

VMs can not get metadata when metadata_host is set to 127.0.0.1 because
packet's destination address will be changed into 127.0.0.1 by iptables.
However, linux kernel will reject packets to 127.0.0.0/8 if packets do not
come from that range. We can use REDIRECT to resolve this problem because
REDIRECT will rewrite the destination address to our own host.

Fixes bug 1015853.

Change-Id: I162fc57510ef9c8e84130b2d11eb53e10dcc5cb0