Nova network needs to take care of existing alias

Nova network should take care of existing aliases on bridge
interfaces when it adds address on top of the list.

Change-Id: Ife54c9eba64906406f7c44a66b596f3162ad16b6
Fixes: bug #1077066
Push 'Error' result from event to instance action.

Currently a failed event stores an 'Error' result but in order to see
which actions have failed it would require grabbing each one through the
api to see the events.  This patch adds 'Error' to the message field of
the instance action so that any actions with failures can be seen from
the initial listing of actions on an instance.

Change-Id: Ieeb798c47211ab00fe5b767dc1f18a665549ba01
sync oslo log updates

this helps address the issue where syslog gets overloaded and we
loose the ability to figure out what's going on in clients like
nova-manage

Change-Id: Iedde5ed4e8e23e204be4fa7a19e9514acf2ebf86
Standardize the coverage initializations.

Now when we measure coverage repeatedly, the coverage data of
nova-api is accumulated but the ones of other nova services are
reset each time.
This is due to create new "coverage" class each time
"_start_coverage_telnet" method is executed.

This patch limits creating "coverage" class the first time
the method is executed.

Fixes bug 1122720

Change-Id: Ia900c96113bee65362ccb7c4c1975535d814d835
Use a fake coverage module instead of real one.

Actually loading the coverage module was leading to odd concurrency
conditions where it was interfering with mocked calls. This changes
to stub out the coverage class with a fake one so that we don't have
to worry about collisions. It also modifies the coverage class to be
created lazily so it isn't automatically started at import time.
Finally it removes the hack in run_tests.sh ignoring the coverage
tests.

Fixes bug 1131023

Change-Id: I39de434454f8b0903f6311e731e215a93027bc91
Enable VM DHCP request to reach DHCP agent

When using the firewall driver IptablesFirewallDriver and the
default INPUT and FORWARD rules are DISCARD then the DHCP
request from the VM is discarded prior to getting to the dnsmasq.

A new rule will be added that enables DHCP requests to pass.

This fixes bug 1131223

Change-Id: I50fad5b63c3c4b22a5d828e3e89353c1ed723332
Change nova-dhcpbridge FLAGFILE to a list of files

This patch adds support to linux_net and nova-dhcpbridge for
specifying and conveying multiple dhcpbridge_flagfile values.
The support is implemented as follows:

dhcpbridge_flagfile is now a "MultiStr" configuration file option
allowing the flag files to be defined over multiple configuration files.
The configured files are concatenated into a comma separated string and
assigned to the FLAGFILE environment variable when invoking
nova-dhcpbridge. nova-dhcpbridge splits the value of the environment
variable on the comma an initializes its configuration with the provided
files (the configuration system already supports loading configuration
from multiple files)

Fixes bug 1131932

Change-Id: Ic9cc57b8f7d9356606b9134ef5b63ab07b6099d9
Run libguestfs API calls in a thread pool

The libguestfs API is a binding to a native C library, and thus
it will block greenthreads. To avoid this all libguestfs API
calls need to be run in a threadpool. This can be done by just
wrapping the GuestFS object in an eventlet.tpool.Proxy object

Fixes bug #1132742
Change-Id: I877ad9e88442e41c9ad234503d9b1ddf1fb27408
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
Add API Sample tests for Snapshots extension.

Partially implements blueprint nova-api-samples
Modifies fakes to produce a real timestamp
Fixes bug 1126211

Change-Id: I8973d50fa67abbf6f96684ff8a0b898912f09caf
Remove unused nova.db.api:instance_get_all_by_reservation

Change-Id: I55192773eaa18eb81ffb2b5ec3567b09116b0d1e
if reset fails, display the command that failed

we get failures in _reset_databases from time to time, and it's
hard to debug without understanding what command failed. Make
this show up in the assert message.

Now with even more output!

Change-Id: Ie82109cfb1745e7218e0906764db1fad0c8fc5f5
Fix broken baremetal migration tests

Change 1c5518ba introduced different user/passwd for the baremetal CI
tests, which did not match the CI systems. Since then, all the baremetal
migration tests have been skipped or failing.

This patch sets the user/passwd back to 'openstack_citest'.

Change-Id: I88508d83d6e9e63f20c26704ec6b455c48a33e8f
Sync nova with oslo DB exception cleanup.

DB exceptions have moved to openstack/common/db/exception module so that
they can be shared with multiple DB implementations.

Deadlock checking was also added to oslo to consolidate with
DuplicateKey checking.  This allows us to clean up our
_retry_on_deadlock decorator in sqlalchemy/api.py

Fixes unrelated pep8 issue with duplicate test in test_compute also.

Change-Id: I7e985b384d1ef345e0d67c919b84b4faff869699
Fix incorrect zookeeper group name

The zookeeper driver group name is 'zookeeper' not 'zk'.

Change-Id: I346cb2740ea835d17918f46be7ca142957537626
Rework instance actions to work with cells

In a cells setup an instance action is recorded at the global cell level
while events try to get recorded in a child cell compute node or
scheduler.  The event recording fails because it can't find an action to
link to.  This patch adds the recording of actions at the child cell
level, and changes the API extension to query the db in a child cell for
the record of actions and events.

This does not address the fact that an action is recorded at the global
cell level.

Bug 1132935
Change-Id: I5831f146397e7afa2d93d26c5d6f9abb9bc6670d
Migration 147: Prevent duplicate aggregate_hosts

If an aggregate_host record is already present, then the `upgrade`
shouldn't attempt to add it again.

Change-Id: Ib7ab10fa7c166ccaa3df6a96eb08c7ebcd0af38c
Fix redefinition of function test_get_host_uptime

First test_get_host_uptime was missing a parameter that the
second test contains.  So remove first test.

Fixes bug 1133062

Change-Id: Id886f4e52f45505117fd8e7bf30bc4d77cacd47b
Fix hacking.py to handle parenthesise in from import as

Fix bug 1133070

Support 'from os import (path as p)'

Change-Id: Ie2e5b3150efb6f47b16978f3de64fca37e1717a6
Minor code optimization in _compute_topic

In cases where a valid host is passed, the if
statement is always executed twice, not once like it should

Change-Id: I6a24bb4f85bfb94d2fdc5d1652ee371f296a10ef
Migration 148: Fix drop table dependency order

The downgrade of 148 was broken because instance_actions_events has a FK
dependency on instance_actions but was attempted to be deleted first,
which caused the sqlalchemy to complain.

The fix is to reorder the table deletes in the downgrade.

Additional cleanups:

* Remove unecessary exception handling which masked errors

Change-Id: Iaac77ba0e81071f6bb39e5cc3b599a4138eb3cd2