Adds macvtap support

The current logic handles only VFs with direct vnic-type.
This fix will add support for VFs with macvtap vnic-type,
By checking the relevant upper_macvtap directory.

Change-Id: Id69b7e64858020682fd0f68b0e162e5e8022eea3
Closes-Bug: 1383098
BSN: Add network to ext_gw_info sent to backend

Include the full network info in the external gateway info
sent to the backend controller. This alleviates a very expensive
query across all tenants on the backend controller.

Closes-Bug: #1393991
Change-Id: If3601ccbce21e683924a7056cdfe4e3c2d4d4a93
Fix hostname validation for nameservers

Fixes the hostname validation to align with the RFC's demands[1].
This was done by replacing the full regex with a function that
broke the FQDN into individual components that were easier to
reason about with regular expressions.

Also added several test cases for domains so if someone wants
to convert it back to pure regex there will be better test vectors.

1. RFC 1123 says an all-digit hostname is allowed in section 2.1. It
   says that this more liberal syntax MUST be supported.

Closes-Bug: #1396932
Change-Id: I003cf14d95070707e43e40d55da62e11a28dfa4e
Alter execute_alembic_command() to not assume all commands

Alembic 0.7.1 is adding new diff directives add_fk and remove_fk.
The logic in execute_alembic_command() appears to assume all potential
commands are present in METHODS.   This patch adjusts it so that
it checks METHODS first, allowing the tests in neutron.tests.unit.db.test_migration
to pass.  However, if the design here requires that all potential
Alembic commands are handled, then this would not be the fix,
though I recommend that the potential list of Alembic directives
not be hardcoded.

Change-Id: Ib08685be252e1fdb0f10853f8fc9a7e19ac54a94
Closes-Bug: #1397796
pretty_tox.sh: Portablity improvement

A recent change (commit 0d5a11d9c722870f9c5e31a993219c7e240b4e19)
introduced bash dependency.  It broke my environment, where bash
is not available.  This change aims to restore it.

As far as I undestand, the change in question requires bash for
the "pipefail" feature.  Fortunately there's a more portable
well-known trick for the purpose.

Closes-Bug: #1398266
Change-Id: Id3561d81462923d20ad39584ba4cf8e1a294a8a8
Updated the README.rst

Updated the Readme.rst with some formatting issues. Also
stole the ending line from the Nova to point in the direction
of the CONTRIBUTING.rst.

Change-Id: I595b7feb641aee91d47ba55eedab29e7511bfa35
Drop RpcProxy usage from DhcpAgentNotifyAPI

Remove usage of the RpcProxy compatibility class from the
DhcpAgentNotifyAPI class.  The equivalent oslo.messaging APIs are now
used instead.

Part of blueprint drop-rpc-compat.

Change-Id: Ib658a0d67da1af3b009bc6df9a7c8ec08c04897b
Imported Translations from Transifex

For more information about this automatic import see:
https://wiki.openstack.org/wiki/Translations/Infrastructure

Change-Id: I2ebc99dd90316bc903778ee7d092870f26841fff
Enforce log hints in neutron.plugins.hyperv

This change enforces log hints use and removes debug level log
translation, modifications are validated through a hacking rule and
the change respects loggging guidelines.

Validate that hacking rules apply to directories:
    - neutron/plugins/hyperv

Change-Id: Iea2d63a4e74bf824ee308057570c980c50e937bc
Partial-bug: #1320867
Enforce log hints in neutron.plugins.sriovnicagent

This change enforces log hints use and removes debug level log
translation, modifications are validated through a hacking rule and
the change respects loggging guidelines.

Validate that hacking rules apply to directories:
    - neutron/plugins/sriovnicagent

Partial-bug: #1320867

Change-Id: Idde3d69c982db49e6b1510d6a6094af82fa25b13
Merge "Adds macvtap support"
Update i18n translation for Midonet plugin

All the existing LOG.info, LOG.warning, LOG.error and LOG.critical
messages should have _LI, _LW, _LE and _LC respectively. Also, debug
level log shouldn't be translated. This patch set will cover the midonet
directory.

Change-Id: Ic74316640015bc98ec4b2722f4039f58a9ec2379
Partial-Bug: #1320867
Remove ovs-vsctl call from OVSInterfaceDriver

ovs_lib module is responsible for the interaction with OVS but
OVSInterfaceDriver._ovs_add_port() method calls directly
ovs-vsctl which implies inconsistencies: ovs_lib calls ovs-vsctl
with a timeout but not OVSInterfaceDriver._ovs_add_port().

This change moves ovs-vsctl call in OVSInterfaceDriver._ovs_add_port
to ovs_lib.

Closes-Bug: #1396489
Change-Id: I4d03f8beef2c5f2366ad2d1cf5f0b18b4f2857cd
Merge "Imported Translations from Transifex"
Merge "Enforce log hints in neutron.plugins.sriovnicagent"
Merge "Drop RpcProxy usage from DhcpAgentNotifyAPI"
Merge "Enforce log hints in neutron.plugins.hyperv"
Merge "BSN: Add network to ext_gw_info sent to backend"
Enforce log hints in neutron.plugins.plumgrid

This change enforces log hints use and removes debug level log
translation, modifications are validated through a hacking rule and
the change respects loggging guidelines.

Validate that hacking rules apply to directories:
    - neutron/plugins/plumgrid

Change-Id: Ie85abb93cdbe50bdd56c9f987784baf4c4dd631d
Partial-bug: #1320867
Update i18n translation for Embrane plugin

All the existing LOG.info, LOG.warning, LOG.error and LOG.critical
messages should have _LI, _LW, _LE and _LC respectively. Also, debug
level log shouldn't be translated. This patch set will cover the
embrane directory.

Change-Id: I89cf8e63311f96c3f1759a6c885d1b98e6fed598
Partial-Bug: #1320867