Remove unnecessary call to get_dhcp_port from DeviceManager

Change-Id: I35459c352e712ea009589f3050205a4c307b909a
Closes-Bug: #1263217
Delete subnet fails if assoc port has IPs from another subnet

This change fixes the following failure scenario:
- Create a network
- Create two subnets on the network
- Create a port on the network using one of the subnets
- Delete the other subnet
= = = > FAILURE: Subnet delete fails because supposedly there
is/are port(s) still associated with that subnet.

The problem addressed is that delete_subnet() in
neutron/db/db_base_plugin.py is checking for port(s) still being
associated with the subnet's network, not the subnet itself.

Change-Id: I7adbe18cce412135b2e42dcb7c592e60c1ec5f8f
Closes-Bug: #1281694
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
Log configuration values for OFA agent

When other agents start up, they log the configuration values
to their logs. This patch adds the same feature to the
Openflow agent.

fixes bug 1289139

Change-Id: Ibab20154805a12ec265a2499cbfd6c376c376130
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: Do not change supported_extension_aliases directly

cisco network plugin extends supported_extension_aliases in __init__
but supported_exntension_aliases is a class attribute and it is not
reset to the original even after each unit test finished.
To avoid this this patch copies supported_extension_aliases to
an instance attribute and extends it to ensure the class variable
is not changed. This reduces unnecessary logs in unit tests.

Change-Id: I3a7313f5ca2d10b1ae6ea961d9d05611aee055c0
Closes-Bug: #1292742
Advanced Services documentation

Adds the beginnings of documentation for the Firewall as a Service,
Loadbalancer as a Service, and VPN as a Service.

Part of blueprint developer-documentation

Change-Id: I5e46df2dc4f87f961490ee75791a7e825ea94e1e
Fixes Hyper-V agent security groups enable issue

Fixes the weight of the applied allow rules by ignoring
the weight of the reject rules.
Fixes the override allow rules issue by fixing the
ACL filtering condition.

Change-Id: I38ddd7142d0fa45f308460153d29580f276ce07e
Closes-Bug: #1294368
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
De-duplicate unit tests for ports in Big Switch

This eliminates the separate classes that existed
for the VIF type testing. Each class was going
through all of the port tests when none of the
logic those tests were exercising was affected by
the VIF types.

This cut the number of tests run in test_restproxy_plugin
by close to 44% without a reduction in code coverage.

Closes-Bug: #1295448
Change-Id: I8c84e1599568fad36b6dd3d51e4ba8a3c012c6c5
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
Big Switch Plugin: No REST port delete on net del

Moves the REST call for port deletion out of the
_delete_port method into the delete_port method
so it doesn't get called during a delete_network
operation. The backend controller automatically
removes ports that are a member of a network when
it's deleted.

Closes-Bug: #1295438
Change-Id: Ic09eb722f8e9bd3ce298dee90d8415cda1a1aa7a
Imported Translations from Transifex

Change-Id: I4d6e714cdb477d6965ae03d9d4ab19ba526086c5