Nova options tool enhancements

Fixes bug #936898

1. Just import the modules and only look at nova.flags.FLAGS
   when they're all imported

2. ConfigOpts is iterable, there should be no need to iterate
   the private FLAGS._opts dict

3. Output should be .ini style

4. The output should only contain comments
   i.e. each option default should be commented out

Change-Id: I15835bb437bc6d575e8311d7c55b3a29d67b006d
Fix nova-manage floating create docs.

Fix RST docs that describe nova-manage floating create syntax.

Change-Id: I743a750b55b2007cc756cfd3c1b34d07c479fb5a
Add missing directive to tox.ini.

Change-Id: Ib6d178af62f631de76e66c2bb6c07fd6b277fa97
Decode nova-manage args into unicode.

This improves handling of non-ASCII args... it's not
exactly a comprehensive solution, though.

Partial (demonstration) fix for bug 931667.

Change-Id: Icc2aabe9c0c521732003f7013438630ebc8d2238
Check all migrations have downgrade in test_misc

Fixes bug #942406

Change-Id: Ifbc74c12a4c58d4e2117295c088051062a0b3b1c
sm volume driver: fix backend adding failure

Fixes bug 915085

Change-Id: I908d2090815a90bae479d5caf8516e52fd879c8e
Fixes bug 943188

Enusre when an aggregate is re-created, it is in the created state,
not just the state it was when last created.

Change-Id: Ie8d63e3d334a872d52d81a9bd66730f08323d5c9
Test creating a server with metadata key too long.

Related to bug 917484.

This bug reported that the OpenStack API returned the wrong type of
error when creating an instance with a metadata key that was too long.
I added this unit test to try it out and it appears to work as expected,
so might as well just keep the test around.

Change-Id: Ie4bcf81741a268fd8319e1ecaad5639ad8c9b6f7
fix for bug 821252.  Smarter default scheduler

compute_scheduler_driver = DistributedScheduler

Change-Id: I8123a120afd80c2b088a387eaab8f5a99a877fe0
Ensure image status filter matches glance format

* Fixes bug 943259

Change-Id: Id5172aa40be2f5a337b3e192b4bee8139c16c4d3
Fixes bug 942556 and bug 944105

Ensures the calls in the xenhost plugin work when the host is in
a xenserver pool managed by the host aggregates feature.

Change-Id: I51ca6b9f6d0e8d86d53afde5bf46cfabde17a44e
Display error for invalid CIDR.

Display an error to the user when giving an
invalid CIDR. Fixes bug 917982.

Change-Id: I5def054f5cc8e14bc8ebd981744d7d7af7f5710b
Retry download_vhd with different glance host each time

Fixes bug 944096

Change-Id: I33aa3774ba7f266e85f09c6c569fdd0f895478b4
Fixes for ec2 images

 * Fixes s3 image service to convert back to uuids on update
 * Adds exception for attempt to update an unowned image
 * Adds error messages to ec2 for failure cases
 * Adds tests to verify changes
 * Fixes bug 942865

Change-Id: I35331c635756f10c02b30dd43ab3fe0ad98bc28c
Do not invoke kill dnsmasq  if no pid file was found.

fixes Bug 943690

Change-Id: I2b1f5cc66ba6ef02219c0d4445487bdd3a541f4b
Remove unused _setup_other_managers method from test case

Change-Id: I4a965987335a6fc1333bca43d8180b7f05d2f7dd
populate glance 'name' field through ec2-register

For images registered via RegisterImage in the ec2 api, populate
glance's 'name' field.  If the name is not supplied in the ec2
request, then set it to be the location.

This has the added value of 'glance index' now showing ec2 registered
images.  Previously, they were not listed because of the empty Name
field.

Additionally, when responding to DescribeImages in the ec2 api,
populate the name field.  Previously we were not populating this at
all.  In the case where there is no name, use image_location.

Fixes bug 930314

Change-Id: I10bcac9ab298a2bf127b5228c62c3cf4f009abd6
fakes.fake_data_store doesn't exist, so don't reset it

Change-Id: Ic1aa13d33fa376974ed1e4b6ccf3216bbebb7d1e
Fix test_migrate_disk_and_power_off_exception

The test asserts that Exception is raised, which means any number of
failures within the test itself will cause it to pass. In this case
there were two bugs in the test case:

1) Too many arguments to migrate_disk_and_power_off
2) fake_get_instance_disk_info should return a JSON string

I changed the assert to catch an AssertionError exception instead to
avoid this kind of bug in the future

Change-Id: I5e0f57b093ee1b2830696542d343c2dd89c383d6
Use self.mox instead of create a new self.mocker

Change-Id: I3406ae9f59e4880ad036329168cbba710aa4dea0