Disassociate floating IPs from port on terminate

Bugfix - floating IPs were left associated after VM
was terminated. Now call disassociate_floatingips
within delete_port as in other networking plugins.

Add L3NatDBIntTestCase suite to cover the
floating IP disassociation case, and fix all failing
tests from that suite.

Change-Id: I856c46631e495d513065fc9e987898408441a21e
Closes-Bug: #1231913
Imported Translations from Transifex

Change-Id: I4f7b102d72ac375e0c42eb1e23d777f25b93c17a
Raise ConfigFilesNotFoundError if CONF.api_paste_config not found

Otherwise it shows an incomprehensible message
"'NoneType' object has no attribute 'startswith'."

Change-Id: I5d87c4ceac69b26730d63727a2ec3701ccc9cecb
Closes-bug: 1236182
Prevent L3 agent looping calls from hanging

This patch adopts several measures to prevent _sync_routers_task
and _rpc_loop from hanging because of subprocess.Popen.communicate
not returning.

1) Perform a sleep everytime a command is completed, similarly to
what is done in openstack.common.processutils.execute
2) Disable by default GARP, as kernel crashes caused by arping
have been observed
3) Prevent a non-critical keyerror in _router_removed from triggering
again a full sync, which might put the system under significant load.

This patch also adds debug log statements aimed at improving the
ability of debugging similar failures.

Change-Id: I003316bce0f38b7d2ea7d563b5a0a58676834398
Partial-Bug: 1224001
Merge "Imported Translations from Transifex"
Merge "Disassociate floating IPs from port on terminate"
Merge "Prevent L3 agent looping calls from hanging"
Fix dhcp_release lease race condition

There is a possible race condition when delete or updating fixed_ips
on ports where an instance could renew its ip address again after
dhcp_release has already been executed. To fix this, the order of
reload_allocation and release_lease need to be switched. This way an
instance will not be able to renew it's ip address after it is
removed from the host file.

Fixes bug: 1237028

Change-Id: If05ec2be507378c634f5c1856dab0fbd396f43cc
Add quota table in PLUMgrid plugin

Quota DB driver is enabled in Neutron by default.
PLUMgrid plugin was missing the "quota" table. It has
been added in this commit.

Fix bug# 1236970

Change-Id: I5170a8be2b412a3bcf1edcacce5574f0073b84d4
Utilizes assertNotIn

Using assertTrue and the 'not in' operator to test
if an element is in a sequence is too python2.4.
Our unit testing framework supports assertNotIn
which was created for these types of tests.

Fixes bug #1230028

Change-Id: Ibaf6c73c514b9ad27f8f37eb3f1043e31dbfdcc1
Utilizes assertIn

Using assertTrue and the 'in' operator to test
if an element is in a sequence is too python2.4.
Our unit testing framework supports assertIn
which was created for these types of tests.

Fixes bug #1230028

Change-Id: I8a9147fa9982644067ff45c73e116d88845e47e3
Merge "Raise ConfigFilesNotFoundError if CONF.api_paste_config not found"
Imported Translations from Transifex

Change-Id: I7ff99a23bc300d05d06ffa2d0ccc9f5742216155
Merge "Utilizes assertNotIn"
Correct the typo %{edge_id)s

Use %(edge_id)s instead of %{edge_id)s.

Change-Id: Id8376ff8ec50e3022f9aca9b8954d8044d849f64
Fallback to Quota Conf Driver if Quotas table is not defined

commit de15e0b9c5 enabled Quota DB driver default considering
production environments, but it breaks plugins without per-tenant
quota extension. In these plugin quotas tables is not loaded.

This commit fallbacks to ConfDriver if Quota model is not loaded by
checking neutron.db.quota_db which defines Quota model is imported.

Change-Id: Idaaaa9810598cfd3e5ce70020f498643b4819d16
Closes-Bug: #1236993
Merge "Imported Translations from Transifex"
Merge "Utilizes assertIn"
BigSwitch: correct net to backend on floating IP disassociation

The corrects the network that is updated on the backendw when a
floating IP is disassociated. It was incorrectly sending the
tenant's network when the update is to the external network the
floating address belongs to.

Closes-Bug: #1237209
Change-Id: I55211ba3b0062e167843830bb318eb8e46249160
Merge "Add quota table in PLUMgrid plugin"