BSN: Bind external ports in ML2 driver

Add a binding capability to the Big Switch ML2 mechanism
driver to mark external ports as bound. Ports with the
owner type 'neutron:external_port' will be assigned to the first
VLAN segment available in the network. The port update operation
will then carry the HOST ID with the identifier to the backend
for the necessary fabric configuration.

Implements: blueprint bsn-ml2-ext-attach
Change-Id: I7b749ba5ef9a47b45be24f77656a10ed38e5e6ae
Fix interface IP address for DVR with gateway

when an interface is added to a router with gateway, the method
internal_network_added(..) incorrectly configures the IP address
of the new snat interface same as the IP address of the new
subnet interface.

Change-Id: I00d4ff1105a443b89b28359249b8e83fb4c1d157
Closes-bug: #1355087
Avoid auto-scheduling for distributed routers

The reason for this is twofold:

- It may relieve contention on DB access while
  both servers and l3 agents are busy setting up
  and syncing routers down respectively.

- It prevents accidental placement of namespaces
  during the L3 sync_routers process, as auto
  scheduling without taking into account the state
  of the L3 agents, as well as the state of the
  routers being processed, may overrule the placement
  decision made during router operations.

Partial-bug: #1356121
Partial-bug: #1359326

Change-Id: Ia677ce212145d6cee65adeb1d8ae594e6ac5e34d
Refactor security group rpc call

Refactor rpc call of 'security_group_rules_for_devices' into
'security_group_info_for_devices' to reduce the response
message size and server side processing time. Includes
agent-side auto detection of rpc version, and fall back
to the old one.

Change-Id: If19be8579ca734a899cdd673c919eee8165aaa0e
Implements: blueprint security-group-rules-for-devices-rpc-call-refactor
DocImpact
Co-Authored-By: Miguel Angel Ajo <mangelajo@redhat.com>
Merge "Make log level in linux.utils.execute configurable"
Revert "Cisco DFA ML2 Mechanism Driver"

This reverts commit 3680fd61c9a1cceaa011b4d0d37d235abf490c50.

The reverted patch incorrectly ties with Keystone and should have never been
approved since the approved version only partially addressed review concerns.

This revert also ensure migration timeline integrity.

Change-Id: If5fbdade72c762b21a477676ded816ce5be97ca5
Merge "Cisco VPN with in-band CSR (interim solution)"
Merge "ofagent: Implement physical_interface_mappings"
Merge "Fixed template of IPsecSiteConnectionNotFound message"
Merge "Big Switch: Separate L3 functions into L3 service"
Merge "Implements ProcessMonitor to watch over external processes"
Merge "Skip functional l3 agent test"
Merge "Fix interface IP address for DVR with gateway"
Merge "Remove status initialization from plugin's create_firewall"
Cleanup rename of get_compute_ports_on_host_by_subnet

A recent merge [1] renamed this method to remove "compute_" from the
name.  Unfortunately, the rename was not done thoroughly.  This patch
cleans that up.  No bug is referenced since this is an obvious
ommission in a recent patch.

[1] https://review.openstack.org/#/c/114141/

Change-Id: I8320bc8deb6dcda586ccff01120270b3ce257ea2
Work toward Python 3.4 support and testing

Change-Id: Ieae7819e0489ae19b7fcfb63497e06527c918b5c
ofagent: Remove @author tags and update copyright notices

When writing these modules, ofagent team (kakuma, yamamoto) thought
that @author tag was OpenStack's style to represent authorships.
But it turned out to be wrong.  Acutally there seems to be a consensus
not to use them.  So, replace them back to the original Ryu-style
copyright notices.

Change-Id: Icc9fdd1850c0c1dbd354bb3312199a7f6849925a
shared policy shouldn't have unshared rules

A shared firewall policy should always have shared rules. So the following
cases should not be allowed:
1.Create shared policy with unshared rules
2.Update policy shared=True when it has unshared rules
3.Update policy with shared=True and unshared rules
4.Update shared policy with unshared rules

Change-Id: I3d71899c328d3fefa96c1f99d6ba706160e445cc
Closes-bug: 1334981
Merge "Don't spawn metadata-proxy for non-isolated nets"
Merge "Refactor security group rpc call"