manage-vdi: Wait until devices have been created before mounting

kpartx creates partition devices asynchronously - it may exit before
the devices have been created.  This may cause a subsequent mount call
to fail, because the device it is trying to mount does not yet exist.
kpartx now has a -s option which makes it wait for the devices to be
created before returning, but the version XenServer's dom0 doesn't have
this option.   Work around this by retrying the mount.

When dom0's kpartx is updated, we will be able to use the -s option.

Change-Id: I823a8eac4f3a2ef313d06e21da0f38ed46d7386a
xenapi: Setup and Rotate text console logs

This patch installs the cronjob that rotates/sets up the text console
logs of the guests.

Related to blueprint xenapi-server-log

Change-Id: Ie4c778b54f69519fbb80aa0d9822383f55a1e2f9
Fix various things when n-cell is enabled

1) Use the newer cell_type configuration option instead of overriding
the compute_api_class.

2) A nova-cells service is started for both the API cell (region) and
the compute cell (child).  The screen names were both 'n-cell' which
caused both services to log to the same log file.  The screen names have
been changed to n-cell-region and n-cell-child.

3) Security groups are not supported with cells.  Multiple exercises are
patched to use the 'default' security group instead of creating a new
one.  Additionally, if one uses the 'default' security group, do not try
to delete it, as one can never delete the default.

4) Disable the floating_ips and aggregates exercises when n-cell is
enabled, as they are not supported by cells.

5) Related to #4, disable the floating_ips tests within euca.sh

6) Update the README.md.  No services need to be disabled, and one only
needs to enable the n-cell service.

Change-Id: I9782d1e3cda3c9dd3daefa15c043f5b06473cb87
Set lock_path for Tempest to TMPDIR

Tempest change I5376f977a110f502f0e4958cbccbd379539e006b syncs
lockutils from oslo. Tempest with testr needs to use external locks
which require a lock_path config option. This commit sets that option
for tempest to use devstack's TMPDIR.

Change-Id: I464edf9e11710e1931ed4f7b0262328a57e5b3de
Update OpenVZ driver image

11.10 simply does not exist, so this simply does not work. However,
devstack-gate tries to pre-cache all images referenced, so even though
we're not doing anything with this, it's breaking devstack-gate.

Change-Id: I64b03ed387f5205a885427498e8cf8c2a5b32b91
Do not set os_aut_url for ceilometer

When install ceilometer with devstack, if do not set environment
variable OS_AUTH_URL, then devstack will set os_aut_url as empty
in /etc/ceilometer/ceilometer.conf, this will cause both
ceilometer-agent-central and ceilometer-agent-compute cannot start.

Fix bug 1205776

Change-Id: I32c77c92dc2e9d03c86e703f170e0216dd829a61
xenapi: Uninstall instances

The devstack script sometimes failed to clean up the left over
instances. This patch will utilize the xe vm-uninstall force=true
command to get rid of the instances.

Change-Id: I3450e2d5c9a4b1fe8ede39c4cc5c337cd541ea35
Merge "xenapi: Setup and Rotate text console logs"
Configure horizon and horizon URLs in Tempest

Tempest now supports testing the dashboard. Adjust the configuration
accordingly.

Change-Id: Ifb5619caab8bd6080c5df4ed43e16c921e7f9b1f
Merge "Set lock_path for Tempest to TMPDIR"
Added libffi-dev to the needed packages

Change-Id: Ida7001886f17c9413b33312f12f2478a54bd6c90
Set tempest lock_path to default in $DATA_DIR

Change I464edf9e11710e1931ed4f7b0262328a57e5b3de set the tempest
lock_path to be $TMPDIR, however when run in the gate this is an
empty string which results in all tests that use locking failing.
This commit corrects that by setting the lock_path config variable
to use $TEMPEST_STATE_PATH which defaults to $DATA_DIR/tempest.

Change-Id: I02fbd50ca68d6daafb5b4c23579473eb703ae72a
Merge "Configure horizon and horizon URLs in Tempest"
Merge "Set tempest lock_path to default in $DATA_DIR"
Merge "Fix various things when n-cell is enabled"
Merge "Update OpenVZ driver image"
Merge "xenapi: Uninstall instances"
Update the ML2 configuration in devstack

This commit adds support to devstack to set ML2 options including
MechanismDrivers, TypeDrivers, and TypeDriver specific configuration for ML2
when running with devstack.

This also allows for simple configuration of VLAN, GRE, and VXLAN ML2 devstack
setups with the OVS agent as follows:

    # VLAN configuration
    Q_PLUGIN=ml2
    ENABLE_TENANT_VLANS=True

    # GRE tunnel configuration
    Q_PLUGIN=ml2
    ENABLE_TENANT_TUNNELS=True

    # VXLAN tunnel configuration
    Q_PLUGIN=ml2
    Q_ML2_TENANT_NETWORK_TYPE=vxlan

Fixes bug 1200767

Change-Id: Ib16efac13440b5d50658a0e6be35bc735510a262
Add option to serve PXE for baremetal from nova-network

New variable BM_DNSMASQ_FROM_NOVA_NETWORK: if setting this true,
DevStack configures nova-network's dnsmask to provide PXE and does
not run baremetal's one. In this case PXE traffic occur in the fixed-ip
network, so no dedicated network for PXE is needed.

Change-Id: I67cade02c03ab45ab6b77d8da9066d7d5ec6c78b
Add Midonet plugin support to devstack.

Add support for Midokura's Midonet plugin to devstack,
in lib/neutron_plugins and lib/neutron_thirdparty.

Change-Id: I9b4d90eab09bbb21b9ba251a311620e0a21e8219