per test_method logging

Using the FakeLogger/LoggerFixture fixture in order to capture the
per test method logs.

The per test method log capturing visible in the console on error or
failure.

The normal logging is preserved and only the INFO level log is
captured.

Change-Id: Id42f79bd3bcaba9aba57f4c0b8a373f33b8cd6bd
Fix ssh timeout issue

SSH client is using a socket timeout and an execution timeout. For
command execution, if the executed command did not generate output
within the channel timeout, test dies with TimeoutException. This is
misleading, because it wasn't the command that timed out, it just did
not generate output within channel timeout.

fixes bug 1215794

Change-Id: I90b9cb7c9cebcb78655b6c1a46f9fb09ff7deb5e
refactor - _is_timed_out using instance timeout

Each _is_timed_out client specified self.timeout as timeout parameter.
As _is_timed_out is an instance method, timeout parameter could be
retrieved from the object itself.

Change-Id: I56c6d5a21a36cf052d3bde86c454d7be72b22a7c
close http connections

Running full tempest one might run out of file descriptors. httplib2
does not close the connection by default. This patch adds
connection:close header to every request, so that sockets won't be
hanging around.

fixes bug 1215804

Change-Id: Iea19936c45add98fc66588f623854e629cf448fb
Switch gating tox jobs to testr parallel

This commit will migrate all gating tox jobs to use testr with the
--parallel flag. The smoke tox job is left serial because neutron
doesn't work with tempest in parallel.

Part of bp speed-up-tempest

Change-Id: I1e6eb9c7ce4d55010844ce3b6ca10dd20e7359b4
Skip orchestration scenario tests if heat service not available

The orchestration scenario tests were not previously checking if the
heat service is available as configured in tempest.conf like the other
service-specific tests. This patch adds that check.

Closes-Bug: #1216335

Change-Id: I10c66adc1bab103b45e2d49d4f005618f2031052
Use common create_keypair method for autoscaling

The scenario test for autoscaling was implemented at the same time
with cleanup patch of create_keypair methods, and the cleanup patch
could not cover autoscaling test.
This patch covers autoscaling test.

Change-Id: Ibf4e98a9d4616c1dc6d2f08bde3d04a40b910067
uniforms skip messages

this is an attempt to uniform skip messages and ensure multi-line
skips are correctly accounted by https://review.openstack.org/#/c/42424/
I think a future update to hacking/checks.py is also needed

Change-Id: I8ef1ac22a8b137f397847d217467df5572afde43
Update requirements from global requirements

This commit just syncs the tempest requirement list with what's in
the global requirements repo. We are already using them for running
in the gate and with devstack so there isn't a reason to update the
lists in the tempest repo. This commit also adds jsonschema to the
list of requirements. It was removed at one point because it caused
an issue with grenade but since the global requirements fix ups this
is no longer an issue.

Fixes bug 1205980

Change-Id: I406eddc0b2363c98035edef6fc651228a2bdd04f
Merge "Skip orchestration scenario tests if heat service not available"
Merge "close http connections"
Adds tests for Heat

Tests and client methods for:
- template-show
- template-validate
- template-url-validate
- stack-list
- stack-show
- resource-list
- resource-show
- resource-metadata
- event-list
- event-show

Testing Neutron resources:
- network
- subnet
- router_interface

Testing server property:
- subnet_id

Change-Id: I47bb0dd653da51c9ff1d2ffe0b02c102cc0098d5
Stress ssh_floating test

Add stress test for floating IP association
 with multiple configuration options.

Change-Id: I184ce2df1ee58043cf9b26c46637c1d8160910e8
Updating HACKING.rst

* Adding a test case independence rule
* assertTrue/assertFalse msg argument
* Encouraging  matcher usage for assertion

Change-Id: I89612a0dd66513f10e8bf53632f6a3d81ccf4129
Merge "Switch gating tox jobs to testr parallel"
Add large-ops option to tox

Add new option because we want to keep separate tox jobs for each
jenkins job.

Part of the regression test for bug 1199433.

Change-Id: I4e59d79d3ce3a9621243a81b7da5d9c3abaf1d6f
Merge "Update requirements from global requirements"
Rename heat logical_resource_id to resource_name

This attribute has been renamed in the heat API.

Fixes bug: 1216903

Change-Id: I4b3b65564eed08d0e077302e747f5ea1124ff7d6
removes self.fail as suggested by HACKING.rst

removes every occurrence of self.fail as per HACKING.rst file; it
is either replaced with a LOG+raise or removed completely when not
needed (again, HACKING.rst suggests the try clause should be avoided
too letting the original exception to flow).

Change-Id: Ief779bada1aa53837d62e3f58a7d3418eef494ba
Implements: blueprint replace-self-fail
Add logging to the python-clients

The python-clients are very different in how they are logging,
the cinder and nova clients needs and additional option.

This change enables the http request/response logging to the
 nova and cinder python client.

The nova and cinder python client wants to create unnecessary logger
 to the console, unless you add a handler earlier.

Change-Id: I5bc72e52d16d2380ee36c8586cd1694ac1b4fa3d