Allow sharing of firewall rules and policies in policy.json

Updated policy for firewall_policy and firewall_rule to allow sharing
among tenants. Added a new firewall sharing rule to enable this.

Change-Id: I5d4d9f94fb3abffe4d1b03c46fd5b13a8a4a4f09
Fixes: bug #1217103
Avoid race with udev during ovs agent startup

After taking down the veth link between the physical bridge and the integration
bridge call udevadm settle to wait for any udev events to be completely
processed by the operating system before recreating the veth pair.

Some distributions (e.g. openSUSE) have udev rules installed by default that
call e.g. ifdown <interface> during the remove event. If that is processed
after the ovs agent already brought up the veth pair again the veth pair's
link will be down after the agent completed startup and networking will be
broken for all VM instances.

Change-Id: I95520ea96a9804c5261a0c994bbca137535cc37c
Closes-Bug: #1218556
Remove code that bypasses some midonet plugin unit tests

Multiple subnets unit tests were skipped

Closes-Bug: #1227079
Change-Id: Iffe731722d0e6c515bc64923673218ddde98c1f6
Send proper exception info as expected by the neutron client

The python neutron client for the V2 API expects the neutron API
to send information back such as the type and detail of the exception
in the body of the message

Change-Id: I9486d757258c4be72799c41102babe1f7923121c
Closes-bug: #1226400
Fix for status always in PENDING_CREATE for Edge service router

The root cause is when deployment finished, we only update router status to
active if the status is in pending create. The problem happens when the
background sync thread update router status to active, so the status update
for vcns_router_binding table is skipped. We fixed this by seperating
checking and updating status for router and binding table.

Also fixed an issue where Edge is not deleted if neutron service is
restarted. The root cause is when neutron service restarts, the cache for
router type is empty. And because we delete the router from db before
we delete Edge, we're not able to locate the router from db to determine
the router type. The fix is to use binding table to determine the router
type.

Also piggyback a missing attribute for updating Edge interface. It must have
been removed by accident when resolving conflict during service plugin merge.

Closes-Bug: #1226229
Change-Id: I3d0639d245e71ea2a3faba70fef1a0ebb87e19fd
Ensure names are truncated to accommodate NVP limit

Switches created through Advanced Plugin should have
their name truncated as well. To this aim, move things
around to avoid awkward imports or code duplications

Fixes bug #1227927

Change-Id: I3cc69356227d3bd63603ee1e53d82e6561f4cad0
Port Cisco nexus and network db UT to ML2 mech driver UT

Fixes bug 1227964

This fix ports the Cisco Nexus database and network database
unit tests to the Cisco ML2 mechanism driver UT.
The existing test scripts which are ported:
    neutron/tests/unit/cisco/test_nexus_db.py
    neutron/tests/unit/cisco/test_network_db.py
The new test scripts are:
    neutron/tests/unit/ml2/drivers/test_cisco_nexus_db.py
    neutron/tests/unit/ml2/drivers/test_cisco_network_db.py

Note that the QoS database related tests in
test_network_db.py are not ported because QoS is
not currently supported in the Cisco ML2
mechanism driver.

Change-Id: Ib47dab9dafde7c4b8cf0a4930379750f00b9455c
Use built-in print() instead of print statement

In python 3 print statement is not supported, so we should use
only print() functions.

This patch also removes print in unit test, left by accident

Fixes bug 1226943

Change-Id: I5ace50cb9e149682344b4c986ef9318f8dc50f72
Flip to pythonic method names for context unit tests

Fixes bug #1228738

Change-Id: Ia1864e64d7d2848f5892484eb5ad592a1f523fae
Fix usage of _fields method in provider_configuration.py

Apply _fields() method to each dict in the list.

Change-Id: I9357212e203843ffa4a05216d9c79fe8831971a5
Closes-Bug: #1227971
Imported Translations from Transifex

Change-Id: I625bfc9c649f6f25f706a8696406a7962bc6f0a9
Fix adding identical metering rules on two labels

Fixes: Bug #1229075

Change-Id: Id86c83ec9c7af78fc08e662bb0a9202f0f759c0c
Merge "Use built-in print() instead of print statement"
LBaaS: include inactive members when retrieving logical config

Closes-Bug: #1229082
Change-Id: I16f452b51a98d912ba8bdf374b4d1e9285d757dc
Merge "Flip to pythonic method names for context unit tests"
Merge "Imported Translations from Transifex"
Merge "Fix usage of _fields method in provider_configuration.py"
Merge "Ensure names are truncated to accommodate NVP limit"
Change hard coded numbers to constants in security group tests

Security groups tests in Neutron contain a lot of hard coded HTTP return codes
and protocol numbers. These should be changed to use constants.

Change-Id: Ibecff3821c54f12848a05648f35381a0c73a0896
Fixes: Bug 1218928
Merge "Port Cisco nexus and network db UT to ML2 mech driver UT"