Adds non_inheritable_image_properties flag.

Some image-properties should not be inherited from the instance when
taking a snapshot because we want that functionality to only available
for the base-image, not subsequent snapshots.

As an example, we would like 'cache_in_nova' fast-cloning to be
available just for base-images and not customer snapshots created off a
base-image.

This patch adds a new configuration which allows operators to, at
runtime, select which image-properties should not be inherited by newly
created snapshots.

Change-Id: I8d7781b05ffd71a59ba69fb7c3df4616cba94cce
Adding networking rules to vm's on compute service startup

Fixes bug 1027105

Restarting nova-compute resulted in a new empty iptables chain
"nova-compute-FORWARD" being create. This commit adds a single
call to plug_vifs which ensures the appropriate filters (and
bridge) are present on service startup.

Change-Id: I51cbb56acbb244ddddd951a26d3168cf5a9c0314
Remove unused add_network_to_project() method

This method was added here:

  https://code.launchpad.net/~tr3buchet/nova/multi_nic/+merge/64767

but appears never to have been used.

We can safely remove it and the 'force' parameter to network_associate()
which only it uses.

This removal from the network service RPC API would not warrant a
major version number bump since nothing ever used this part of the
API.

Change-Id: Iba3cf7b61b629ba513a58a38886c9322818accb5
Make it clear subnet_bits is unused in ipam case

In NetworkManager.create_networks(), the subnet_bits variable is unused
where 'ipam' is passed as a parameter - i.e. when the method is called
from QuantumNovaIPAMLib. This is because in the ipam case we never
carve up the IP range into multiple networks.

Move the variable around so that its usage scope is more obvious.

Change-Id: I2a1a2cb63f9864c15b33b30f1bf995a50a6ec067
use boto's HTTPResponse class for versions of boto >=2.5.2

Fixes bug: 1027984

Change-Id: I2101ddaa78ede90f39b55d28aab73e7f5a816af5
Return 404 when attempting to remove a non-existent floating ip

This fixes bug 993774 and returns 404 instead of 202 when trying to
delete a floating ip from an instance to which it is not allocated.

Change-Id: I9538a8a71cbbb9d19e9ebb76f93b180dbf619764
Merge "Adds non_inheritable_image_properties flag."
Update jsonutils from openstack-common.

commit 9e1bd9d9313a9f324c5b7b02232e8bd2fd12ea8a
Author: Russell Bryant <rbryant@redhat.com>
Date:   Wed Jul 18 16:47:34 2012 -0400

    Add missing convert_instances arg.

    When calling jsonutils.to_primitive() recursively, the convert_instances
    argument should be passed along.  This change fixes one place where it
    was not.

commit 2d6f84742a3e8ea51ebbfb82cbeacefe97e199d5
Author: Russell Bryant <rbryant@redhat.com>
Date:   Wed Jul 18 16:15:52 2012 -0400

    Track to_primitive() depth after iteritems().

    Change jsonutils.to_primitive() to increase the recursion depth counter
    when calling to_primitive() on the result of iteritems() from the
    current element.  Previously, the only time the counter was increased
    was when converting the __dict__ from an object.  The iteritems() case
    risks cycles, as well.

    I hit a problem with this when trying to call to_primitive on an
    instance of nova.db.sqlalchemy.models.Instance.  An Instance includes a
    reference to InstanceInfoCache, which has a reference back to the
    Instance.  Without this change, to_primitive() would raise an exception
    for an Instance due to excessive recursion.

    Related to nova blueprint no-db-messaging.

Change-Id: Iaa49ea08b406a38840e8a0b5466d48f2d3f7e840
Merge "Return 404 when attempting to remove a non-existent floating ip"
Merge "Remove unused add_network_to_project() method"
Merge "Make it clear subnet_bits is unused in ipam case"
Merge "use boto's HTTPResponse class for versions of boto >=2.5.2"
Merge "Adding networking rules to vm's on compute service startup"
Merge "Update jsonutils from openstack-common."