Improve OpenstackProvider

* auto remove stale ssh keypairs
* ability to specify network for created instances

Change-Id: I39bbfac1a6ca4090b2b3286417a375cf559b12fa
Updated from global requirements

Change-Id: I05e7d3f0b9dad30aa2d352c43f416142000e66c7
standardized output for scenario runners

We have format requests for the result of scenario runners.
So, we create class ScenarioRunnerResult to check the formate.
Basically, all runners should return the result with an instance of class ScenarioRunnerResult.

Change-Id: Iaf62fd19e46654c7bcbd46719c7c4bea4ccaf9ad
Merge "Improve OpenstackProvider"
Use ConfigParser to generate tempest config

Usage of ConfigParser provides flexible way to generate various
configuration files for tempest.
Generation of a configuration file takes a time, so checking the
existence of a file is moved into function `verify`.

Blueprint tempest-verification
Closes-Bug: #1296769

Change-Id: I221bf18090e93eb66a84dc80b87c80a0d1deb99a
Add boot_and_list_server benchmark

Added boot_and_list_server benchmark.
Config example is below.

{
    "NovaServers.boot_and_list_server": [
        {
            "args": {
                "flavor_id": 1,
                "image_id": "ccc8fe37-9289-437b-a88c-fc4678656c75"
            },
            "runner": {
                "type": "continuous",
                "times": 1,
                "active_users": 1
            },
            "context": {
                "users": {
                    "tenants": 1,
                    "users_per_tenant": 1
                }
            }
        }
    ]
}

Change-Id: I55f9125612a68c9168db686972f52c702ec5803f
remove a mixed style (**{} and param=value)

There are a mixed coding style of "**{param:value}" and "key=value"
in some places. These would be misleading for following developers.
Removing this could remain a clean and clear coding style here.

Change-Id: I92df99e943f76c1c1dba4672c4b59f65ea2b1f06
show detailed exception when doing cleanup

The patch including:
* report exception information when doing cleanup
* using LOG.warning rather than LOG.info in UserGenerator
* log tenant id rather than tenant name

Change-Id: I9011f353f7995fdda143faf62b3673101c91d6a7
Merge "Use ConfigParser to generate tempest config"
Merge "remove a mixed style (**{} and param=value)"
Add shell script for integrated tests

This script does rally installation check

Change-Id: I85c37416ef4cb2daaddedde49fd0d6c820298fc8
add create_and_list_volume benchmark

Added create_and_list_volume benchmark.
Config example is below.
{
    "CinderVolumes.create_and_list_volume": [
        {
            "args": {
                "size": 1,
                "detailed": True
            },
            "runner": {
                "type": "continuous",
                "times": 3,
                "active_users": 1
            },
            "context": {
                "users": {
                    "tenants": 1,
                    "users_per_tenant": 1
                }
            }
        }
    ]
}

Change-Id: I8b56a6e9e12cc2801332ba9760a2bc2892112d99
Add fix __ctx_name__ in keypair context

Rename __name__ to __ctx_name__
Closes-Bug: #1297896

Change-Id: Iee17d7228f7bcc0860b74da9235ae1cde05d3fcd
Fix envutils.get_global (prev. default_deployment_id) errors management

* Since envutils.get_global doesn't raise anymore 'InvalidArgumentsException'
(due to this fix https://launchpad.net/rally/+bug/1291298) we are encountering
issues when get_global simply returns None. That's why the bool parameter
doRaise was added to get_global, so when needed the method will raise
'InvalidArgumentsException' and in the case of #1291298 get_global won't raise
any exception and will simply return None.
* Fixed unit test of Tempest Install command, deploy_id was always None in the
unit test and once the above modification applied, an InvalidArgumentsException
was raised which caused the failing of the test.

Change-Id: I18e2ac99e6412c3ae67769390e390d4210243381
Closes-Bug: #1293454
Refactor text in use deployment command

Change-Id: I9671f4599e210fcb34b110fb898f9c6799930b43
Merge "Add fix __ctx_name__ in keypair context"
Merge "Fix envutils.get_global (prev. default_deployment_id) errors management"
rename DummyEngine to ExistingCloud

fix one task:
https://trello.com/c/0UoJd645/181-rename-dummyengine-to-existingcloud

Change-Id: I8ac4e4120f9dbe2f9f365055d3328dd8c1e0b948
rename DummyProvider to ExistingServers

fix one task:
https://trello.com/c/5w4pF7me/182-rename-dummyprovider-to-existingservers

Change-Id: Ic0ca93f00292e9d053a654c9bacf4c76922551ee
Use testr directly in tempest verifier

Script `run_tempest.sh` writes needed records into environment and
parses arguments for transmission them to testr.
It is difficult to control arguments which passed into testr by
this script. Therefore, it would be nice if rally will use testr directly.

Blueprint tempest-verification
Closes-Bug: #1297328

Change-Id: Ia06334b1d150f2ac12720d4d238e98c922ed20f0