Initial basic setup of openstack and tempest config file

The objective of this script is to configure openstack environment +
tempest config file while relying on nothing but the current Openstack
installation and/or existing tempest config file.
it achieves this by using only Openstack python clients and/or global Openstack
environment variables and for some tempest specific settings, the tempest
config file.
This script is a WIP and currently support only creating users and configure
the tempest config file with active images found in openstack.

TODO:
    1. Add support for existing config and not rely on sample only
    2. Add download & creation of images
    3. Add network configuration
    4. more advance features as required

Change-Id: I06f38280e6b550d03c64954e042aee7331ecb31b
meta should be metadata in rebuild server

this change the parameter of rebuild server from  meta to metadata.
currently the parameter meta has been ignored.

Closes-Bug: #1233040

Change-Id: I9009a8836e07496f5752956c28ee7d9b0b0e783e
add a negative test for flavor_extra_specs

When unseting a nonexistent key, an exception should be raised.
when settting flavor extra specs, key is arbitrary, so
'set_nonexistent_key' does not make sense

Change-Id: I1b94a8b9524ed67dfc3fb1afd51442b740873638
Remove unused CONF variable and import statement

This CONF vaiable and 'import config' are not necessary. So this commit
removes it.

Change-Id: I050c2c1aa8642e6a39e9dbfef63f0156d457c5fc
Test for the nova diagnostics API

Add tests for nova API 'servers/{server_id}/diagnostics'

Change-Id: If631472081d16fe8c0b37575eb157a7b13d6fba4
Cleanup existing instances in setup for test_list_servers_negative.py

Change I8519cba1fcf6ff39d69839783d07359544509db5 was supposed to make
the setup for test_list_servers_negative.py handle the case that tempest
is being ran without tenant isolation, but it doesn't fix the entire
problem because it's only checking if the MULTI_USER global is False.
The MULTI_USER global is only False if allow_tenant_isolation=False and
user1 == user2. So if you're running tempest without tenant isolation
but you do have two separate users/tenants for running the tests, then
the setup can still fail.

This patch fixes the problem by always doing the cleanup if
allow_tenant_isolation=False regardless of what MULTI_USER is set to.

Closes-Bug: #1234370

Change-Id: I821e200d07c11ba04d8be788095b7648de1d820b
add volume list tests

list volume using parameters:
display_name
status
availability_zone

Change-Id: I97d88b5033e7033cfc4b2328698978da7714f0a4
add some negative tests for volume updating:

- test_update_volume_with_nonexistant_volume_id
- test_create_volume_with_size_negative
- test_update_volume_with_invalid_volume_id
- test_update_volume_with_empty_volume_id

Change-Id: Iee8510303b2643c065a662655ac2b4e44611ba84
Add some test_cases for compute-cli

+ test_agent_list
+ test_cell_list
+ test_host_list

Change-Id: Ic99c3e137da688a97d39af4902c71ddddf34228e
Add CLI tests for Neutron's metering agent

This adds simple tests for the following commands:
* meter-label-list
* meter-label-rule-list

Change-Id: Ie0891d61b925c0d3e11e66eb10c7994368930a94
Merge "Initial basic setup of openstack and tempest config file"
Merge "add volume list tests"
Merge "Cleanup existing instances in setup for test_list_servers_negative.py"
Merge "meta should be metadata in rebuild server"
Merge "Remove unused CONF variable and import statement"
Merge "add some negative tests for volume updating:"
Merge "Test for the nova diagnostics API"
add some tests for user api

make a seperate file test_users_negative.py and move exist negative tests
over to it,also add some negative tests to it

- test_create_user_with_enabled_non_bool
- test_create_user_with_enabled
- create_user
- test_update_user_for_non_existant_user
- test_update_user_request_without_a_token
- test_update_user_by_unauthorized_user
- test_delete_user_request_without_a_token

Change-Id: I5a87d72ecb94046809faf0ce14b1af347c2e4dcc
Increase heat's default max_template_size

devstack has a small 10k max template size.  This is too small for
many templates that may be used during development.  Thus, we need
to change this and devstack to a larger value.

Change-Id: I474c7cbc196a4e94ba67cab4e2ca2263dc902e26
Merge "Add some test_cases for compute-cli"