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
Handle failures on update_dhcp_port

Ensure exceptions due to conflicting
state of network or subnet resources
are dealt with by the dhcp agent.

Closes-bug:  #1253344
Related-bug: #1243726

Change-Id: I4fd51442c034fabc91d5a3f065f4df98f5fad35b
Sync dhcp_agent.ini with the codes

Add an option item into dhcp_agent.ini to sync with the codes.
* Add ovs_integration_bridge in /etc/dhcp_agent.ini
* Add corresponding unit test

Change-Id: Ia78e7ca6c1fcbeca3e962f870a393e44183d719c
closes-Bug: #1256197
Change to improve dhcp-agent sync_state

Added a pool.waitall to dhcp-agent sync_state
to ensure that the last pool of threads are complete
before another sync_state begins.  Added another
log message to aid in debugging. Also added the
test_sync_state_waitall unit test.

Change-Id: I13d79a212672c4086e3082783743cb1ef2b48cfb
Closes-Bug: #1257514
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
Fix str2dict and dict2str's incorrect behavior

Closes-bug: #1258065

Change-Id: Idf14c077eeeda6f18f534ad8f62cd741d0c0a2eb
Merge "Change to improve dhcp-agent sync_state"
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
Imported Translations from Transifex

Change-Id: I10900cbcfdd3e1568d48dc2e17ccb1a426cd27cb
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
Merge "Sync dhcp_agent.ini with the codes"
Merge "Handle failures on update_dhcp_port"
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
Switch to using spawn to properly treat errors during sync_state

Changes f1b9ac5a and 9f6ff7e3 were aimed at improving the robustness
of the sync_state method. However both missed switching from spawn_n
to spawn to properly deal with raised exceptions.

Change-Id: Ieda4a5ecca63de67d8a9757962e7e3383fd9c9ea
Related-bug: #1257514
Add fwaas_driver.ini to setup.cfg

Change-Id: Ie8157c0df343fb1009e7bc5b3ed2f2d4b0d0afec
Closes-Bug: 1258585
Merge "Fix a typo in log exception in the metering agent"