Add list of pool ids to HealthMonitor dict

List of pool ids will allow users (and horizon dashboard) to
show associations between pools and monitors more conveniently.

fixes bug 1212258

Change-Id: Ie1e48e554382a6a4df9e1ba6312c505ba2ca8c02
Fix 500 error on invalid security-group-rule creation for NVP

Validate that, when creating rules specifying a protocol different
from TCP, UDP, ICMP and ICMPv6, no port (range) is specified because
NVP does not like it.

The extra validation is specific to the NVP plugin because other
plugins may choose a different failure mode. For example, the ovs
plugin does not complain at all, but it just ignores the port range
if the protocol is not a port-oriented one.

Fixes bug #1213293

Change-Id: I46e9032b5cf7f7d88b9d05c3bf020784b04217d9
Add recent neutron extentions and IB support

Additions to Mellanox Plugin:
Add ML2 compatibility support.
Enable Infiniband Network Type.
Keep the compatibility to Linux Bridge Plugin to allow Network node deployment via Linux Bridge L2 Agent.
Add support for Host Port Binding and L3/DHCP Agent Scheduler.

Implements: blueprint mlnx-plugin-improvments

Change-Id: Ieca518bbd07a39258cd14ceeecd3f9d3e2b6f219
Avoid performing extra query for fetching mac learning binding

Bug 1214879

Add a relationship performing eager load in the Port model, thus preventing
the 'extend' function from performing an extra query.
This patch also replaces assertTrue with assertEqual in unit tests as it
needs to evaluate whether the value of the mac_learning_enabled attribute
is equal to the boolean literal True, whereas assertTrue verifies that the
expression passed to it evaluates to True. This means that any value but
False will be enough for the test to pass, which is not correct.

Change-Id: I03345ef3a125fdfa1ec7f6c3363d76efc12ced82
Improve dhcp agent structure to support multiple dhcp models

This patch introduces some minor refactoring of the dhcp
code so that it is easy to support both an in-node/same
process dhcp provisioning model (e.g. with dnsmasq) and
proxy model, where DHCP is provided by an external node.

Higher separation of concerns is also achieved by doing
better data encapsulation.

Implements blueprint dhcp-flexi-model

Change-Id: Icbd215e9682ecaebb6a4300423f3564e8e677566
Minimize ovs l2 agent calls to get_vif_port_set()

The ovs l2 agent was previously calling get_vif_port_set() on the
integration bridge once per rpc_loop() iteration and then again in
the periodic _report_state() call that returns the current device
count to the neutron service.  Since get_vif_port_set() is an
expensive call (relying on shell commands) and since there
is minimal risk associated with reporting stats that are a few
seconds old, this patch caches the device count for reuse by
_report_state().

Partial-Bug: 1177973

Change-Id: Ice73384ed1ba1e97120028cd0a9bff94a62a41a4
BigSwitch plugin - add portbinding info in requests to controller

Include portbinding info in requests to controller so it receives
information about the compute node like the VIF type and the host
ID. Also includes better debug output on back-end failures.

Fixes: bug #1216061
Change-Id: Ib85c8a088ee9fb94baaf8f28849b318b32d9d672
Support for Floating IPs in PLUMgrid plugin

Implements blueprint plumgrid-plugin-floatingip

Include operations supporting create, update and delete of Floating IPs
Drivers been updated properly

Change-Id: I8ed5e620e45f026e0673be78971329a93353370d
Analyze re-raised exceptions in Cisco Plugin

Checked all cases of re-raised exceptions. In several cases, the exception
was redundant (re-raising the same exception), so the try block and
exception handling was removed.

In one case, exceptions raised from two sources were re-raised with a
a different exception. Instead of doing this, the original exceptions
were changed and the try block and re-raised exception were removed.

In cases where there were database exceptions that were re-raised as
Neutron exceptions, the traceback was left as-is, since it was more
informative to know the higher level source of the issue.

The same was true for the exception mentioned in the bug, where the
original failure was in the ncclient library parsing the configuration
and it would be more descriptive to know that there was a connection
failure or a config failure, that to know the library method.

bug 1213159

Change-Id: Ie334d2548bf651c61e878bf797adaf8c5880eb86
Embrane Neutron Plugin

Implements blueprint embrane-neutron-plugin

This commit implements the main Embrane plugin, which covers
route and extratoute extensions.

The plugin will rely on existing plugins for leveraging L2 networks,
for now it only supports OpenVSwitch and vlan networks, but more
supports are to come if the model is approved (or a different one
is suggested).

Change-Id: I90aff8ec4324bd3a7c59c411374db6a118d1a72b
Adds support for the Hyper-V WMI V2 namespace

Blueprint: hyper-v-wmi-v2

The Hyper-V APIs are mainly based on WMI. The original 2008 Hyper-V
release introduced the "root\virtualization" namespace which got
superseded in Hyper-V Server / Windows Server 2012 by the
"root\virtualization\v2" namespace (referred as V2 in the sources).

The original namespace has been dropped in the upcoming Hyper-V 2012
R2 (currently available in preview), which means that the Grizzly code
will not be compatible with it as is.

The Hyper-V driver is structured with a clear decoupling between OS
interaction classes (so called *utils modules and classes) and the
agent's logic.

This allows us to provide an implementation of the V2 API without
impacting the rest of the agent's code, based on a factory module
added to instantiate the proper version of the *utils classes: the
original "V1" ones for versions of the OS predating 2012 and the
newer "V2" ones starting from Hyper-V 2012 (Windows kernel version
6.2).

Change-Id: I380d8c65715242d8a5b94b5061ebe4f30e6c2090
Enable authentication between PLUMgrid Director and Plugin

Implements blueprint plumgrid-plugin-rest-access

Change-Id: I0f9a6c39c09f756ee5fc7c9d6993e59b1e6be639
Remove trailing comma

Closes-Bug: #1217135

There are trailing commas in default value of some options, uncomment
them will cause CRITICAL error for neutron-server. These sample config
may mislead operators, so this patch fix them to the correct format.

Change-Id: Ie0b7626aade653b761257eb2bf397cb3cc5a961e
Add extra_dhcp_opt extension to BigSwitch/Floodlight plugin

Adds support for the DHCP options extenion to the
BigSwitch/Floodlight plugin.

Fixes: bug #1206655
Change-Id: Ida30ca44ecbb9d1208303e47519427a4111f6025
Fix incorrect usage of assertTrue()

The usage of assertTrue() is incorrect, more explicit assert
from the unit test suite(like assertIsNotNone or assertIn)
should be used instead.

Fixes: bug #1217028
Change-Id: I30a80bc9e122d28c22b698e0cb97068c1040bfc3
Signed-off-by: Rosario Di Somma <rosario.disomma@dreamhost.com>
Imported Translations from Transifex

Change-Id: I963fdd0c311be49a96a337e439f4028756baafbe
Allow for skipping admin roles loading on context creation

Bug 1216866

There are cases in which an admin context is created only to grab a db
session and ensure no tenant filters are applied in _model_query. In
these cases evaluating the policy engine for grabbing admin roles is not
necessary, and can cause unexpected and serious issues if the context is
grabbed before all the extensions are loaded.

Change-Id: I0cbf4b51ca1286373c16eb907840a32f4b8190c6
Correct spelling mistake

Change-Id: I3bd2f76e73459e50d255f75f79262af537b29596
Merge "Allow for skipping admin roles loading on context creation"
Merge "Avoid performing extra query for fetching mac learning binding"