Remove unnecessary call to get_dhcp_port from DeviceManager

Change-Id: I35459c352e712ea009589f3050205a4c307b909a
Closes-Bug: #1263217
ML2 Cisco Nexus MD: VM migration support

Add VM (live) migration support to the ML2 cisco nexus mechanism driver.

Change-Id: I8be2fc1f020ef1fc6c19daba0a9e278629046016
Closes-Bug: #1247976
Add missing ondelete option to Cisco N1kv tables

Update the DB migration script, which creates the Cisco N1kv tables,
to include the ondelete='CASCADE' option in network and port
binding tables. This allows proper clean up of network and port
binding entries on respective delete operations, when the tables
are populated via DB migration script.

Closes-Bug: #1294434

Change-Id: I5dad7bd718b75cfd8825b08336e834d64bddd196
NSX: Make replication mode configurable

The replication mode on switches and routers should have been configurable
to use source replication if one did not want to deploy service node(s).
This patch fixes that by making this option configurable.

Change-Id: Id9e8043c602b5e9349c10247eab993e59db5a52c
Closes-bug: #1285383
Fix bug:range() is not same in py3.x and py2.x

in python3.x, there is no method named xrange(),
it has replaced by range(),which is equal to xrange() in python2.x.
so we must fix this issue.we use six module to fix this issue.

Change-Id: I9cee3f0df2d8abbf6f66d7c5a3a0fed98df622e8
Closes-Bug: #1268439
NSX: lower the severity of messages about VIF's on external networks

Set the message to INFO as there is no error to recover from or
something bad about to happen. The only place where this occurs
is during the setup of probe interfaces in DevStack.

Change-Id: I2310af00676e508646783ce769a8830ab0b9308f
Cisco Nexus: maximum recursion error in ConnectionContext.__del__

If DevStack is configured for the Cisco Nexus plugin, the following
error is observed:

Exception RuntimeError: 'maximum recursion depth exceeded' in <bound
method ConnectionContext.__del__ of
<neutron.openstack.common.rpc.amqp.ConnectionContext object at
0x403a3d0>> ignored

The root cause of the problem is that the Cisco Nexus plugin's
PluginV2.__gettattr__ method, a model object is being passed
as a value for a unicode %s format mod. Because the neutron server
has "lazy gettext" (deferred interpretation of unicode objects) enabled,
this causes many layers of recursive calls to deepcopy.

The fix is to pass a string object for the unicode %s mod field.

Change-Id: I0a07a0ab417add68e44cb1bca722cb0b4a71205b
Closes-Bug: #1286565
Added config value help text in ns metadata proxy

Change-Id: I9d59e902cf9ed89e29d93b29912c87f2bad73c7c
Closes-Bug: #1215270
Log dnsmasq host file generation

We've been seeing things that appear to be races between the hosts
files being written out for dnsmasq and dhcp requests coming in.  We
will get occasional errors from dnsmasq saying "no address available",
"duplicate IP address" but by the time you look, the corresponding
host file has long since been replaced.

If we had some debugging like this, we could at least correlate what
neutron thought dnsmasq knew at the time the requests were coming in.

We store the filename to avoid multiple lookups, and also
s/name/filename/ to avoid ambiguity and be more consistent with the
rest of the code.

Closes-Bug: #1294892
Change-Id: Ifa92ca71419ce0155b28d2015eff9e82557a0825
Fix duplicate name of NVP LBaaS objs not allowed on vShield Edge

Duplicate name of LBaaS objs such as pool/vip/app_profile is not
allowed on vShield Edge, so here a name convention is needed to ensure
name uniqueness on the edge side.
Closes-Bug: #1257225

Change-Id: I953610d0389a78aa01f378c2ff4931d8c74413ea
Fix typo in lbaas agent exception message

Change-Id: Iec2a5e02d40f73e4576ed853577a6a9f85e49e67
Closes-Bug: #1295187
Add enable_security_group option

Using noop driver to disable security group is confusing.
In this commit, we introduce enable_security_group in server side.

DocImpact
UpgradeImpact

Implements bp: security-group-config-cleanup
Related-Bug: 1112912
Change-Id: Ice44a4e2a519c64e613eeb24372de46726473339
Imported Translations from Transifex

Change-Id: I4d6e714cdb477d6965ae03d9d4ab19ba526086c5
Avoid creating FixedIntervalLoopingCall in agent UT

Set polling_interval to 0 to avoid creating LoopingCall
in loadbalancer agent tests, dhcp agent tests, linuxbridge agent tests

Change-Id: Ib6edbc11feba402a4c2f19b7d6833b49879ee626
Closes-Bug: #1288079
Don't set priority when calling mod_flow

This commit [1] changed the behavior of modifying flows to not allow priority
to be set on flow modification. The agent code which was calling mod_flow was
not updated to respect this behavior. The unit tests were also not updated in
this regard. I've corrected this behavior now, and added a negative UT case to
catch this in the future.

[1] https://review.openstack.org/#/c/58533/

Closes-Bug: #1295703

Change-Id: I20737637cc84567a5ec19efaad18e7f334007f18
Return meaningful error message on pool creation error

Instead of returning exception specific to haproxy (agent-based),
return more generic BackendNotFound exception.
It also could be used later when binding to devices will be
introduced. That exception will indicate scheduling failure, e.g.
inability to find appropriate backend for the resource.
Resource (pool) is then marked with ERROR state with corresponding
error description.

Change-Id: Ic18ff20102b4bb2b97e7b186fcf797133bd3ba3d
Closes-Bug: #1295214
Use save_and_reraise_exception when reraise exception

This fixes reraise in pluign codes.

Closes-Bug: #1279813
Change-Id: Iee174d94c0ce69eb01eb86eea1a903eceb7569d5
Merge "Imported Translations from Transifex"
rename ACTIVE_PENDING to ACTIVE_PENDING_STATUSES

Looking at the lbaas code it's not very obvious that constants.ACTIVE_PENDING
is a list of statuses that contain statuses that are ACTIVE or
PENDING. This patch renames ACTIVE_PENDING to ACTIVE_PENDING_STATUSES so
it's obvious that this is a list and not just a string called ACTIVE_PENDING.

Closes-bug: #1295790

Change-Id: I7af96bcc6b145c6ab809c0b032ccb18baad9c98e
Merge "NSX: Make replication mode configurable"