Nicira plugin: Do not expect a minimum number of SNAT rules

Bug 1192392

The code was assuming a SNAT rule for each subnet was always present
when clearing a gateway. If the SNAT rule was removed for some other
reason from the NVP backend, this would have led to the failure of
the whole operation; however, a failure won't have been necessary
in this case, as the final effect of the operation is to remove
the rules anyway.

Also, this patch ensures a quantum router is put in ERROR state if
it is not found on the NVP backend.

Change-Id: Iac1a61342b490d0d971b884e1aa8d9567b15cac0
Add support for moving ip/addresss/default gateway

Add support from moving ip/addresss/default gateway from physical interface
which is going to be attached to bridge to bridge device itself.

Fixes: bug #1192122

Change-Id: I8a8bf5edc17a87dcb747626dd1d6817ac48cb20d
Fix logic for handling SNAT rules

Bug 1192610

Fixes and simplifies the logic for managing SNAT rules, based
on the assumption that a chain contains SNAT rules for a single
router.
It also fixes another small glitch with SNAT rules not being
removed when a gateway port is destroyed (the glitch did not
affect operations)

Change-Id: Ia95e375459a1f32e93bbe912a268a8ed13859c69
Deprecate enable_tunneling in the OVS agent

This patch properly deprecates the 'enable_tunneling' option in the OVS agent.
It does this be ignoring it if 'tunnel_types' is set, and if 'enable_tunneling'
is set, it defaults 'tunnel_types' to only GRE.

Fixes bug 1195374

Change-Id: I27fe6b930541a514fc51d3a6669347e52db8cb46
Imported Translations from Transifex

Change-Id: Id0d866b54429c147e7b0aef9b3d43e1265086ac7
dom0 rootwrap - case insensitive xenapi section

As per change https://review.openstack.org/33429 the config sections
became lowercase. This patch makes the quantum-rootwrap-xen-dom0
rootwrap to be case insensitive for the xenapi section.

This patch also changes the default config file to use a lowercase
xenapi section.

Fixes bug 1195781

Change-Id: Ic24feb1a9ad6f8823745b1febd4a0edd54e73498
faster quantum-openvswitch-agent periodic reports

One of two patches that fixes bug #1194438.

Instead of spawning ovs-vsctl for every port on br-int, we just dump the
required columns from the Interfaces table and grab the rows that we need. This
is a big win because the time it takes for ovs-vsctl to connect to the
openvswitch controller is orders of magnitude greater than the time it takes to
parse the rows. In practice, instead of taking roughly 1s per interface, the
agent's periodic task only takes 1s in total.

Change-Id: Idbf32c38e0c4a9c9634c1e4f0e79bd556b720493
Support a timeout argument when instantiating a bigswitch plugin

The timeout argument overwrites the timeout value set in the config file.
The change permits any standalone script to interact with the bigswitch controller
through the quantum plugin with customized timeout value without changing the plugin
behavior.

Fixes: bug #1195923
Change-Id: I17954e70d661e7e7d5156c34c08b7c96bb3203ce
Merge "Imported Translations from Transifex"
Merge "Deprecate enable_tunneling in the OVS agent"
Update code to properly use dict returned from get_gateway.

Calling get_gateway was a late addition to my code to add a default
route in the DHCP namespace.  The code did not properly handle the
dict returned from that method.  This changes it to properly extract
the 'gateway' attribute from the dict.

Change-Id: I9823a31feee7ab333c277fc6e78f366408393155
Fixes: Bug #1195543
Remove duplicate _check_provider_update from plugins

This patch removes the duplicated method _check_provider_update
and adds a check for it in the NVP plugin that was missing so that an error
is raised if someone tries to update a provider network.

Fixes bug: 1192702

Change-Id: I84e6767f351122f9e5af0cd4ef24d8eaaeb4ccd5
Merge "Support a timeout argument when instantiating a bigswitch plugin"
Merge "dom0 rootwrap - case insensitive xenapi section"
Merge "faster quantum-openvswitch-agent periodic reports"
Fix case with no host_id in BigSwitch plugin

This correctly checks for the case where nova does not
provide the host_id in port creation/updates.

Fixes: bug #1195903
Change-Id: Ic0d714a3977810c6b1144c1e25488f75cc95d0f0
Improve Nicira plugin test coverage

Blueprint nvp-test-coverage

This patch improves the Nicira plugin test coverage by:
- adding a suite of test cases for nvplib
- removing unused exception handling code
- removing 'vestigial' code in nvp plugin modules

This patches also fixes a few minor glitches with the plugin
and the fake api client.

Change-Id: Ia319f556a815e5061b867a97d834123786218fec
Merge "Nicira plugin: Do not expect a minimum number of SNAT rules"
Merge "Update code to properly use dict returned from get_gateway."
Merge "Remove duplicate _check_provider_update from plugins"