Move manager options into nova.service

Move the compute_manager, console_manager, cert_manager, network_manager
and scheduler_manager options into nova.service.

Apart from the tests, these options are mostly just used in nova.service
so it makes sense for them to live there. Also, metadata_manager already
lives there.

blueprint: scope-config-opts
Change-Id: I180859817b57c081b83d6a6f075a6ff76bb0ef6d
Move api_class options to where they are used

The compute_api_class, network_api_class and volume_api_class options
are only used in their respective modules, so move them there.

blueprint: scope-config-opts
Change-Id: Ib0497f46b44c4b3af7319550cc64c09d629ea362
Move osapi_compute_unique_server_name_scope to db

This strange little option is only used within the DB layer.

blueprint: scope-config-opts
Change-Id: I10b0fef02a5fffd44094fe351cde683fc5c31442
Move default_instance_type into nova.compute

Apart from the tests, this option is only used in
nova.compute.instance_types so move it there.

blueprint: scope-config-opts
Change-Id: Iadf4011739e50455b7ad4214a778a02e244fef35
Move enabled_apis option into nova.service

The enabled_apis option is only used in nova-api and nova-all but
there's no more obvious place to put it than nova.service. At least
this location is consistent, since we quite have a number of other
options related to the APIs in nova.service.

blueprint: scope-config-opts
Change-Id: I86e200fa5ad91ac0b7ab6837cc61e5927b2ebeb7
Move vpn_image_id to pipelib

Apart from checking whether a given image is the cloudpipe image, the
vpn_image_id option is only used within pipelib itself.

Add a is_vpn_image() helper method and move the option into pipelib.
Some rejiggering of how pipelib imports ec2 opts is required to avoid
circular imports.

blueprint: scope-config-opts
Change-Id: Ie984b2bb81681c24d3cee803082960083992a535
Move common virt driver options to virt.driver

The default_ephemeral_format and use_cow_images options are used by a
number of virt drivers and nowhere else.

blueprint: scope-config-opts
Change-Id: I4ab2891e156589ae7bb44e6ce69cba3680a070c5
Adds option to rebuild instance with existing disk

Evacuation of VM from a failed host for HA.
New api supports recreate/rebuild modes. With shared storage,
VM is recreated on the specified target from existing disk.
Otherwise, rebuild from original image is performed.

* new recreate, target host and on_shared_storage in rpcapi.rebuild
* change in manager.rebuild to rebuild instance using existing disk

part of blueprint rebuild-for-ha

DocImpact

Change-Id: I4d119eafc30da2779ad252259f88118ed0038cd1
Co-authored-by: Oshrit Feder <oshritf@il.ibm.com>
Fix pyflakes issues in integrated tests

Change-Id: I8d483319d0a20a2c8fb7a5e0e22c83048b7399dc
Remove baremetal-compute-pxe.filters

The baremetal PXE driver doesn't seem to run dnsmasq at all, so remove
the rootwrap filter which allows it to do so. This was introduced by
commit a2f260f.

Change-Id: I4cc1127222b73af218a6a8808d0ad54478878af1
Fix double reboot issue during soft reboot

Using the ID of domain in Libvirt to recognize the hard reboot has been
implemented or not, if the ID changed, we believe the domain has been rebooted,
return True and break from soft reboot.

Fixes: bug #1046356

Change-Id: Iec2f9e8225cfe2779f84d2095667f3c0e621e935
Adds a flag to allow configuring a region

If multiple regions contain an endpoint, extract
the correct endpoint URL from the os_region_name parameter
in nova.conf

Fixes LP Bug #1087735

Change-Id: Id4e4f56f336cd2b092a173b3c8e695b173c76f2a
Merge "Fix N402 for nova/api"
Enhance wsgi to listen on ipv6 address

* Check if the hostname is ipv6 and set the family appropriately
* Add test case for wsgi.Server and service.WSGIService

Change-Id: I6edd467467fa3d623d62e146750b3a6c42d8833c
Fixed typos in doc strings.

Change-Id: Ibf4bf4ce882077c89d8bb91f93572af7b6cc5da2
don't clear the database dicts in the tearDown method

This is superfluous as the two dicts (self.engines and
self.test_databases) are re-initialised during setUp anyway and aren't
used in between

Change-Id: Icafa9bdf3b0193f31752e6104ecac0e49476c812
Merge "New instance_actions and events table, model, and api"
Merge "Fixed typos in doc strings."
Merge "Adds option to rebuild instance with existing disk"
Merge "Move enabled_apis option into nova.service"