ML2 Cisco Nexus MD: Support portchannel interfaces

Port of port-channel interface support that was implemented for the cisco
core plugin - https://review.openstack.org/#/c/42037

Note that additional port-channel UT already existed. (Created during
initial cisco core nexus subplugin -> ml2 cisco nexus md port.)
See test_cisco_nexus.py module, NEXUS_PORTCHANNELS references.

Closes-Bug: 1294900
Change-Id: Ifc64f605e5783ee1e85d66c87f422f64b47fa996
lb-agent: fix get_interfaces_on_bridge returning None

Change get_interfaces_on_bridge() to return [] instead of None
if the bridge is not found, as callers are expecting an iterator.

Change-Id: I359a2a0cf932c049f6891d4ba3eb8b9b23ab360d
Related-Bug: 1284311
Set correct columns' length

In migration 569e98a8132b_metering incorrect length is set for
description column (255 instead of 1024) and in migration
39cf3f799352_fwaas_havana_2_model for firewall_rules table
incorrect length is set  for protocol column (24 instead of 40).

partially implement bp: db-sync-models-with-migrations

Change-Id: I0b2cb00c3bd2cd2ac7e002c861095129e5b5aa96
BigSwitch: Create router ports synchronously

Since router ports are created as part of a
long transaction with multiple REST calls, they
need to be created sychronously. This is to prevent
the async thread from deleting them from the backend
if it can't find them in cases where they haven't been
committed to the DB yet.

Closes-Bug: #1305331
Change-Id: I2ab3c862dc6b1760199654bbd0969ac5efdbe704
Fix typo in ml2 configuration file

Change-Id: I1d191a2c69d7450584e0ee25a0f5fce237b1c817
Closes-Bug: #1305226
Fixes Hyper-V agent security group ICMP rules

Converts ICMP protocol to the equivalent protocol number.
Adds default ICMP reject rules.
Adds default ANY protocol rules if the rule does not
contain any protocol.

Closes-Bug: #1299159
Change-Id: Iff51a58fdb532eda0fe7a63abf96004ee74bb073
Remove "reuse_existing" from setup method in dhcp.py

This flag is never used, it's always set to True by
DhcpLocalProcess.enable()

Change-Id: Ic30e0f2c97679d5919cc4e4afeb38666a6d41392
Closes-bug: #1305083
Merge "Set correct columns' length"
Update ensure()/reconnect() to catch MessagingError

The error handling code that gets connections reset if necessary
caught ConnectionError. It really needs to catch MessagingError,
which ConnectionError inherits from. There are other types of
MessagingErrors that may occur, such as InternalError, and they need
to cause the connection to reset, as well.

This fix has already been merged into oslo.messaging.

--

Cherry-picked from oslo-incubator 234f64d608266f43d8856ff98c89ceba6699d752
See also https://bugzilla.redhat.com/show_bug.cgi?id=1086077

Closes-bug: #1303890
Change-Id: Ic5082b74a362ded8b35cbc75cf178fe6e0db62d0
Merge "Remove "reuse_existing" from setup method in dhcp.py"
Remove mock.patch.stop from tests that inherit from BaseTestCase

The tests that inherit from BaseTestCase don't need to stop their
patches, since this is already done in the base class

Change-Id: Ibb1183e521686d6e948046997b32f4044d91d9e7
Closes-bug: #1305656
Merge "Fixes Hyper-V agent security group ICMP rules"
Merge "ML2 Cisco Nexus MD: Support portchannel interfaces"
Merge "Update ensure()/reconnect() to catch MessagingError"
NSX plugin: fix get_gateway_devices

Fixes the error and adds relevant unit tests.
Also fixes get_gateway_devices signature for allowing
paging and sorting.

Closes-Bug: 1306301

Change-Id: Icb52a764e111365beaf4dc4fb4a5b8970a6cf887
Merge "BigSwitch: Create router ports synchronously"
Merge "Remove mock.patch.stop from tests that inherit from BaseTestCase"
Merge "lb-agent: fix get_interfaces_on_bridge returning None"
Merge "NSX plugin: fix get_gateway_devices"