Migrate Instance object to Fields

Related to blueprint structured-object-fields

Change-Id: Icd8a22458b311c4ca10c1382e214e09b23cba36c
Migrate NovaPersistentObject and ObjectListBase to Fields

This actually uncovers an invalid testing scenario we had for lists,
which was using non-objects in the list-of-objects tests.

Related to blueprint structured-object-fields

Change-Id: I94609c1fd4a8b011e71bde7d9510ec2d3cb29868
Migrate some tests that were using callable fields

Related to blueprint structured-object-fields

Change-Id: I24207991e7385a7bbd2c56808d3cda76bed68ad8
Make the base object infrastructure use Fields

Related to blueprint structured-object-fields

Change-Id: Icd2944f17b6100d51007dbc48da90e4e992bbd48
Remove transitional callable field interface

Related to blueprint structured-object-fields

Change-Id: If0ffcd609fd58abd573926cda789bb6f722e28ff
Avoid caching quota.QUOTAS in Quotas object

This removes the local caching of the QUOTAS module in the Quotas
object. If we ever use deepcopy() on objects, this will cause
us trouble. Since it's not necessary, remove it for now.

Change-Id: I0d0e5fba9cd26c1648ff724238554478e65f62ea
Make a note about Object deepcopy helper

This adds some clarifying documentation on the NovaObject.__deepcopy__
helper.

Change-Id: I0d2e997a6826537c059e34fcfc8b894662d42ee3
XenAPI: Fix translation of metadetails in aggregates

https://review.openstack.org/#/c/43157/ added a translation from the sqlalchemy model to
the instance object replacing metadetails with metadata.

This added more traces in general for XenAPI (when we queried whether we were using
aggregates) and actually broke the host aggregate functionality

Change-Id: I87195753931945b6e1ecf75bc81575a6fa03068e
Closes-bug: 1232179
xenapi: post install scriptlet to rpm

A freshly installed XenServer requires some modifications in order to be
able to run OpenStack. Nova contains an rpm specification to create a
package with the dom0 plugins, however installing the rpm is not enough.
Some more actions need to be taken:
 - create /images, link to a directory within the local SR
 - setup an ssh keypair, and authenticate it with the host
This change adds a post script to the nova plugins rpm spec file, so
by installing the rpm on a XenServer, it is ready to run OpenStack, no
further manual actions needed.

Change-Id: Id57e3a3ab2782550468c6aa4c01059ceb7cc81ab