Auto allocate gateway_ip even for SLAAC subnets

For a SLAAC subnet that is created without specifying the gateway_ip,
Neutron currently allocates (If0c48a7287a828eef4a0f0b0859d4f898d2937bd)
the gateway_ip at a later stage (i.e., neutron router_interface_add).
In order to keep the API consistent between IPv4 and IPv6, it is
recommended to allocate the gateway_ip during subnet_create stage itself.

Closes-Bug: #1394112
Change-Id: I965232930502c21b605fe360bb138bb6ea73d2b0
ofa_test_base: Fix NoSuchOptError in UT

Ensure setting up cfg.CONF.
Otherwise, depending on the execution order of tests,
some tests in test_ofa_neutron_agent can fail with
the following exception:

    NoSuchOptError: no such option: config_dir

The problem has been exposed by the recently merged change
for policy module, commit d83731a96d3b47fab1295de1fb53cfe30576619c .

Closes-Bug: #1392569
Change-Id: I0d38df0510b95160c67ea7b76ed413138fa3d770
Have L3 agent catch the correct exception

L3 agent imports the processutils module to catch exceptions that
wouldn't ever be thrown because the underlying execute() being
called is the one from neutron.agent.linux.utils which raises a
RuntimeError on failure.

Also, processutils is now part of oslo.concurrency. So when we
actually start using it, we'll use it from there.

Closes-Bug: 1401626
Change-Id: I43874e1b63a0ba7b01415cafe0538f4343057066
tests: initialize admin context after super().setUp call

New policy code requires that CONF is already initialized when policy
checks are invoked. It means that no Neutron context objects should be
created before BaseTestCase.setUp() is called that will set
configuration, among other things.

Ideally, we would just make sure that all test cases invoke
super().setUp() as the very first line of any subclass setUp() methods.
But since some of test cases require prior setup (like mocking extension
manager) before proceeding to base class, we end up with magically
shuffling context instantiations to occur below super() calls.

Change-Id: Ib1039ea1ff9480ca57f9cb0c917469d0d2ad28b8
Closes-Bug: #1400301
Set timeout for functional job

As functional jobs take more time to finish than unit tests and also
there is a chance that test will hang due to system interaction, this
patch sets maximum execution time to 90 seconds per test.

Change-Id: Ib58a1b53ace178e1bf99150628fa5576b079e8bc
Merge "Have L3 agent catch the correct exception"
Merge "Auto allocate gateway_ip even for SLAAC subnets"
Merge "Set timeout for functional job"
Merge "ofa_test_base: Fix NoSuchOptError in UT"
Merge "tests: initialize admin context after super().setUp call"