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
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
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
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
subnet calls of ml2 mechanism driver

Implements blueprint ml2-mechanism-driver-subnet-calls

Change-Id: Ib9a8009975959692f46f80fb2a850fcc2b22debe
Fix script to build rpm required for L2 OVS agent for XenServer

Use up to date way to retrieve the version info.

Fixes bug #1215619

Change-Id: I7263fd61a8ea407626d2330f7546f4046e803b50
Make Neutron NVP plugin future-versions friendly

This patch enables the plugin to deal correctly with
newer versions of the NVP platform; this is done by
allowing the plugin to fall back to the closest known
version of the NVP platform. This is acceptable behavior
as L2/L3 operations implemented by the platform are most
certainly backward compatible.

This patch also improves test coverage for this part of the
code, which is critical to the correct behavior of the plugin.

Fixes bug #1217479

Change-Id: Ifcce47c6ee2bc2bc96ddfe9298d252700aceca3f
Merge "subnet calls of ml2 mechanism driver"
Merge "Make Neutron NVP plugin future-versions friendly"
Imported Translations from Transifex

Change-Id: I963fdd0c311be49a96a337e439f4028756baafbe
Merge "BigSwitch plugin - add portbinding info in requests to controller"
Merge "Support for Floating IPs in PLUMgrid plugin"
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
Merge "Fix script to build rpm required for L2 OVS agent for XenServer"
Merge "Adds support for the Hyper-V WMI V2 namespace"
Correct spelling mistake

Change-Id: I3bd2f76e73459e50d255f75f79262af537b29596
Merge "Remove trailing comma"
Merge "Minimize ovs l2 agent calls to get_vif_port_set()"