Big Switch: Only update hash header on success

This patch moves the hash update call into the success block
of the server manager so the database isn't updated with
a hash header from an error response. Additionally, it prevents
the hash from being updated to an empty value if the hash header
is not present in the response.

Conflicts:

	neutron/tests/unit/bigswitch/test_servermanager.py

Closes-Bug: #1348766
Change-Id: I512d01f9bb91b208dd58883d2464951ecc6748e1
(cherry picked from commit b8cf45218714937681d7df2e5b9d7d440cb2edd9)
Clear entries in Cisco N1KV specific tables on rollback

During rollback operations, resources are cleaned up from neutron
database but leaves a few stale entries in the n1kv specific tables.
This change addresses the proper clean up of tables. i.e. VLAN/VXLAN
allocation tables, profile binding and vm network table.

Conflicts:

        neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py

Change-Id: I7a09d34f3a9dee0a43b76c5d781ee9eb9938953a
Closes-bug: #1336596
(cherry picked from commit 73b4239fbef5e52494cf3ffc3293dbb79b52d91c)
Remove explicit dependency on amqplib

kombu already depends on amqp or amqplib depending on its
version, and no explicit access to amqplib exists in neutron code.

Conflicts:
	requirements.txt

Closes-Bug: #1317094
Change-Id: I5cf189d7173b732cba6df3f9b6aff1d2bb85cdfe
(cherry picked from commit 39ffcb0dd75d9dc5d8a249f2974a67f0def5204b)
Fix func job hook script permission problems

- The hook script is the wrong place to unstack since
  it needs to run as the stack user with sudo privileges and those
  permissions are removed as part of the devstack-vm-gate.sh script.

- The functional job gate hook script needs to use sudo to
  install the test-only rootwrap filter.

Change-Id: Ib2e5ec016a5a414dd9675328650efb2b39b0e3fe
Related-Bug: #1360658
(cherry-picked from commit 2f7932055247df3ac5ec4783e029cfeda0466f71)
Merge "Clear entries in Cisco N1KV specific tables on rollback" into stable/icehouse
Add support for router scheduling in Cisco N1kv Plugin

Added functionality for router and network scheduling
in Cisco N1kv Plugin.

Closes-Bug: #1286412
(cherry picked from commit 9869cc1d100ced5f50cf03b557639835c364fbb5)

Conflicts:
	neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py

Change-Id: I1a8d27670d10ca26fb62a8d02230a1aaf3e7bbca
Merge "Fix func job hook script permission problems" into stable/icehouse
Merge "Big Switch: Only update hash header on success" into stable/icehouse
Merge "Remove explicit dependency on amqplib" into stable/icehouse
Merge "Add support for router scheduling in Cisco N1kv Plugin" into stable/icehouse
Datacenter moid should not be tuple

Remove the comma, because it will convert the string to tuple
Closes-bug: #1362480

Change-Id: I2debb76bae26fe3d437a431f2946f66a1cbe6851
(cherry picked from commit ace3a01ebf980c166b4dfe6d1216b17bf0aec2ed)