Cisco VPN driver correct reporting for admin state chg

Depends on reference implementation change (81124 review) that will pass VPN
service admin up/down changes to the service driver (for subsequent passing
to the device driver).

This change will save the runtime state of the IPSec connections that have
been removed due to a VPN service down change, so that this can be reported
to the plugin properly. Otherwise, without the change, there is no info
on the downed connection and no change report so the plugin thinks the
connection is still active.

In addition, the status for the VPN service will reflect whether there are
any IPSec connections ACTIVE. If one or more are acive, the service will
be active, otherwise it will be DOWN.

Updated UT to add tests for admin state and status reporting. Also changed
some IPSec create UTs because they were not cleaning up correctly upon test
failures (only seen with a live CSR).

In the future, when the Cisco CSR REST API supports admin up/down support,
the IPSec connections will not be deleted, but instead will be shut down, in
response to an admin down event (and then brought up, for admin up). During
the down time, the state will be reported correctly and no run-time state
recording needed.

Change-Id: I294bfb400c31ef36dfe5d9e85b34845e5aef8515
Closes-Bug: 1291619
fixes broken neutron-netns-cleanup

Some configuration parameters used in neutron.agent.linux.utils
were missing. The namespace attribute in the FakeNetwork object
was missing, and used in neutron.agent.linux.dhcp. Also, the
plugin object was missing for release_dhcp_port operation.

We provide a fake plugin object to accept current and any future
plugin calls as this is meant to be an standalone tool that
should work without any RPC connectivity.

FakeNetwork was switched for neutron.agent.linux.dhcp.NetModel
to follow any future changes in NetModel.

Two wrong called_once_with_args calls without assert were fixed.

Change-Id: Ia51ea9bd4c8eea6b250858964ad5286c933702e0
Closes-Bug: #1291915
Partial-Bug: #1297875
Fix test MAC addresses to be valid

MAC addresses should have 6 octets - 'ff:ff:ff:ff:ff:ff'.

Change-Id: I9c2457d978ccce15549d3258961093a130375bff
Closes-bug: #1302282
Move bash whitelisting to pep8 testenv

Change-Id: If2c3ebf57143cbed04b66a9986d67f91fee89630
Closes-Bug: #1302304
Don't emit log for missing attribute check policy

A missing policy for validating whether an attribute should
be visible or not is a perfectly normal condition, and
there is no value in logging it.

Writing this information to the log is also having a
considerable performance impact on list operations.

Change-Id: Ie9d3ae6b249a5c49f6d81c1e56915174d8479a07
Closes-Bug: 1302467
Merge "Cisco VPN driver correct reporting for admin state chg"
Merge "Move bash whitelisting to pep8 testenv"
Merge "fixes broken neutron-netns-cleanup"
Merge "Fix test MAC addresses to be valid"
BigSwitch: Don't import portbindings_db until use

The Big Switch ML2 driver re-uses large parts of
code from the Big Switch plugin. However, the plugin
uses the old portbindings_db in its port tracking
code. This db is not created/used by ML2, so it does
not exist when the Big Switch ML2 driver is being used.
This caused a problem when the portbindings_db module
would be imported even though it wasn't being used
since the SQLAlchemy models would create the
relationships during the import.

This patch moves the portbindings_db import down to
the methods that leverage it so it won't be imported
during use by the ML2 driver.

This is a temporary solution which can be back-ported
if disabling auto schema generation is back-ported
to icehouse. An appropriate fix will require some
refactoring to avoid the port tracking code from
being imported for ML2.

Closes-Bug: #1300628
Change-Id: I551abf9d6ec832c423cba0d50bb27715b43c0b1c
Merge "Don't emit log for missing attribute check policy"
Merge "BigSwitch: Don't import portbindings_db until use"