Preserve floating ips when initializing l3 gateway interface

Change-Id: I5a88225d291538cb9db0f8f4afa348192b8b984d
Closes-Bug: #1233271
l3_agent: make process_router more robust

If internal_network_added/removed fails, _sync_routers_task will call
process_router to do fault recovery. Because the port is already
added/removed to/from ri.internal_ports, internal_network_added or
internal_network_removed will not be called again.

The patch fix this issue by calling ri.internal_ports.append/removed
only if internal_network_added/removed succeed. Without the patch,
the added testcases would fail.

Change-Id: I2d2e004caa670c1624257c1d7ccc900438b42d08
Co-Authored-By: Hirofumi Ichihara <ichihara.hirofumi@lab.ntt.co.jp>
Closes-Bug: #1255871
Add request timeout handling for Mellanox Neutron Agent

Add request timeout handling for messages sent to eswitch Daemon.
Using configurable number of retries and increasing waiting interval
between retries resend the message.
If request timeout persists, eswitch daemon is not reachable.
In such case, exit the agent process.

Closes-Bug: #1228827

Change-Id: If1290bedafe7a0dd8a61cbe328510075edeb1e5b
Fix unable to add allow all IPv4/6 security group rule

Previously, if one tried to add a rule to allow all ingress ipv4 neutron
would respond that the rule was already part of the security group.
This happened as the filter for querying existing rules uses a wildcard for
remote_group_id thus returning a false match. This patch addresses
this issue.

Change-Id: I0320013a3869d25fb424995354721929465d2848
Closes-bug: #1252806
Improve unit test coverage for Cisco plugin common code

Closes-Bug: #1190615

This fix improves the unit test coverage for the Cisco Nexus plugin
common modules (directory neutron/plugins/cisco/common) from:
--- cisco_credentials_v2.py 82%
--- cisco_faults.py 0%
--- config.py 84%
To:
--- cisco_credentials_v2.py 100%
--- cisco_faults.py 76%
--- config.py 100%

Change-Id: Id1ccfee1317309039fab83f622ced58efc3b2ae7
Removed erronus config file comment

The comment stating 'DHCP agents needs it.' with regards to the
rpc_notifier notification_driver is incorrect.  Looking through
the code, I see no place this is true.  I believe it to be an
error.

Closes-Bug: #1258390

Change-Id: I58c2f9290731f3e88e4b4a5bdb600aa5bac1a12b
Do not concatenate localized strings

This makes it hard for translators to understand what is going
on. Use string formatting with kwargs expansion.

Change-Id: Ic9ad8bb4e3d9c32188f4175bb0359e268921696b
Sync rpc fix from oslo-incubator

Sync the following fixes from oslo-incubator:

e227c0e Properly reconnect subscribing clients when QPID broker restarts
ef406a2 Create a shared queue for QPID topic consumers

Change-Id: I286edf6bc4a677aa61f60da785802c19878c79c7
Closes-bug: #1251757
Closes-bug: #1257293
Fix a typo in log exception in the metering agent

This patch fixes a typo when there is a exception
when the agent try to invoke a method of the driver.

Change-Id: I4fcf19fa84f178348abfb3563bbfd52f0dfcc095
Closes-bug: #1256041
Add fwaas_driver.ini to setup.cfg

Change-Id: Ie8157c0df343fb1009e7bc5b3ed2f2d4b0d0afec
Closes-Bug: 1258585
Merge "Fix a typo in log exception in the metering agent"
Merge "Sync rpc fix from oslo-incubator"
Merge "Do not concatenate localized strings"
Merge "Fix unable to add allow all IPv4/6 security group rule"
Remove dead code _arp_spoofing_rule()

This code should have been removed when the allowed_address_pair
extension was added here (0efce6195fa7be80e110bd841dc9b3537a94c376).
The arp spoofing rules are handled in the method _setup_spoof_filter_chain().

Reported by: Amir Sadoughi that this was crud I left behind :)

Change-Id: Ib0e2e2a5c13fb8fa7af1f988510143f40ac335e2
Closes-bug: #1258629
Merge "Improve unit test coverage for Cisco plugin common code"
Imported Translations from Transifex

Change-Id: I6f89af93f175d2de8eb2e00b08217a0b29e44385
Merge "Add request timeout handling for Mellanox Neutron Agent"
Merge "Removed erronus config file comment"
Merge "Imported Translations from Transifex"