Cells: Re-add DB model and calls

Implements blueprint nova-compute-cells

Change-Id: I5e254988f3dd17cd1147b6c2d0372e3bb6fe6937
Provide better error message for aggregate-create

For an InvalidAggregateAction exception:
Before: 'ERROR: There was a conflict when trying to complete your request (HTTP 409)'
After: 'ERROR: Cannot perform action 'create_aggregate' on aggregate 'N/A'. Reason: invalid zone. (HTTP 400)'

Fix bug 1083353

Change-Id: I26e30059fe5bbc30eecc52cccec4eba2a57d00db
Add exceptions to baremetal/db/api

Raise exceptions from baremetal/db/sqlalchemy/api.py
  following the precedents from nova/db/sqlalchemy/api.py.
Fixes tests to expect the new exceptions.
Adds __init__ so that baremetal tests work in isolation.

blueprint general-bare-metal-provisioning-framework

Change-Id: Ic8ef66e8f3180460a7bf117fccbfe15078905d8b
Respect the base_dir_name flag in imagebackend.

Resolves bug 1083447.

Change-Id: Ie23c9f46bbbcd2b87dfa7b3ac767ad7c4a4c6397
Display errors when running nosetests

During Ubuntu builds we run the run_test.sh script
during the package build process, so that we can catch
regressions in our packaging before uploading to the archive.

However a recent change writes the output of the nosetests
to an error log so we don't see why the package fail to build.

This patch also displays the output of the nosetests so we
can see why the tests fail without having to look at the nosetests.log.

This patch add the '-v', for a verbose display of nosetests.

Change-Id: Id21d53df356de344a8577282c5a82f3ff927bc11
Signed-off-by: Chuck Short <chuck.short@canonical.com>
Validate rxtx_factor as a float.

Updates the rxtx_factor validations in the instance_types modules so
that rxtx_factor is validated as a float. Given that rxtx_factor is stored
as a float in the database this makes sense... and also adheres
to some of the extension documentation as well (although some of
the extension docs were incorrect as well).

Previously rxtx_factor was being cast into an int which caused it to
be stored and displayed incorrectly via the API.

This patchset adds a test which fails with the old code.

Additionally some of the API docs are corrected so that rxtx_factor is
listed as a float in all examples.

Fixes LP Bug #1081287.

Change-Id: Iae98522a1f2ed63cbd2497b0b0af5ac2d9bb935c
Merge "Provide better error message for aggregate-create"
Merge "Display errors when running nosetests"
Merge "Cells: Re-add DB model and calls"
Merge "Respect the base_dir_name flag in imagebackend."
Merge "Add exceptions to baremetal/db/api"
Add version to conductor migration_update message.

I forgot to add the minimum version requirement for the conductor rpc
call to do a migration update.  This fixes that mistake.

Part of blueprint no-db-compute.

Change-Id: I377a3c1d213abf203127eabd91095061156febc3
Merge "Add version to conductor migration_update message."
Migration model update for multi-node resize fix.

Adds source_node and dest_node to Migration model records for
compatibility with multi-node resizes.

The accompanying database migration:
* Adds source and dest node information to existing Migration records
* Fixes the node field on Instance records that have been resized.

bug 1081355

Change-Id: I4b58821174a262ed7885aba1fc79b3b67c9aa859
Make resize and multi-node work properly together

Added node support to migrations and update node properly in
'resize_instance'.

bug 1081355

Change-Id: I003d34e3f7ed9ce2feda19ee5ce210ed4ba7eaa1
Merge "Migration model update for multi-node resize fix."
Merge "Make resize and multi-node work properly together"