Change the default value of scenario_output

Change the default value of the scenario_output variable of the
_run_scenario_once function of the rally/benchmark/runners/base.py
module because there was no errors key in this variable when a scenario
failed with timeout.

Closes-Bug: 1336762
Change-Id: Ieebc2064bcfee3f2bd23ee40394f8117e9096f01
Updated from global requirements

Change-Id: I2ed6046288eb7e91d9e1b0f2e6ad0d703f6e6ddb
Check python>=2.7 before running tempest

* Tempest requires python>=2.7
* Check python version >=2.7 before installing virtualenv for tempest

Change-Id: I89048652d879fd3907f1628887dd6cc1e6e3ba3e
Closes-Bug: #1336209
Merge "Check python>=2.7 before running tempest"
Add abstract layer for benchmark context semantic validation

This patch add abstract layer support for context semantic validation.

Partially Implements: blueprint benchmark-context-semantic-validation

Change-Id: Ib481e4a1019157f5339742b40681a35c76de7080
Ensure temporary results_dir is created

* The results_dir is created to save log files during tempest run
* Ensure it is created correctly

Change-Id: I440e42ca6f8a8858773a09b0a756a0d05235ba3e
Closes-Bug: #1335122
Merge "Add abstract layer for benchmark context semantic validation"
Add nova floating ip management in VM scenario

This patch allows VM runcommand scenario attach a floating ip
to the instance to perform ssh connection.

Blueprint: benchmark-scenarios-vm-floating-ip

Change-Id: I2e77d6be34a64d5feb9d3ecc5e35c8a712b10bed
Merge "Ensure temporary results_dir is created"
Merge "Add nova floating ip management in VM scenario"
Change the default value of use_public_urls

Change the default value of the use_public_urls configuration option of
the ExistingCloud deployment engine to True.

Change-Id: I8ccb19fdef7911c2e27145758014e942086bf954
Updated from global requirements

Change-Id: I8f6fd8efdb90b3c122312ff1b261da882c51b674
Add tempest unit test cases

Added missing tempest test cases
as part of unit test coverage.

test_single_test_negative
test_set_smoke
test_set_full
test_set_from_list
test_set_selective
test_specific_regex

Change-Id: I89d96ce4142dd72c79fdd21b100addd56ae03188
Implements: blueprint improve-unit-test-coverage-rally
Check if required services are available before starting the scenario

In this patch:
   * validation function benchmark.validation.required_services()
   * a piece of refactoring in scenarios.base and runners.base modules
   * new decorator benchmark.validation.validator(),
     which transforms validation function into scenario validator
   * constants for OpenStack services names and types
   * refactoring in rally.osclients
   * method osclients.Clients.services() to obtain available services
   * services validation is added to scenarios

blueprint check-service-availability-before-start-scenario

Change-Id: Id6126efb1bda73dd9ff92346ddf690329765f43f
Merge "Add tempest unit test cases"
Add json results to the logs bundle, as well as html

The json file of the raw results is useful if you want to pull
the results into an external system, e.g. to plot the performance
of the gate over time.

Change-Id: I03d6b6f6ab5c5aee3a0f5de0c87eaf393f041d14
Merge "Check if required services are available before starting the scenario"
Patched version of hacking library

updated version of hacking library for tests

Change-Id: I90dbded90f7bae03b9087c910ce542c2b3642da4
Whole scenario time measurement

Change-Id: I2708a5f915d5b13948f50dfad26b2463b9d5249b
Updated rally gate scenarios

Change-Id: I021e4be45cf3e9d92c9e099cec63ae844831c995