Verify attributes through Nova os-quota-sets API

This patch adds checks whether a response of Nova os-quota-sets
update/get/get_default/get_detail API includes the attributes
to block the backward incompatibility change in the future.

The quotas response body of v2 get/get_default API is the following:
{
    "quota_set": {
        "id": "231a1e7fd1b344f9874d0334d98b459c",
        "instances": 10,
        "cores": 20,
        "ram": 51200,
        "floating_ips": 10,
        "fixed_ips": -1,
        "metadata_items": 128,
        "injected_files": 5,
        "injected_file_content_bytes": 10240,
        "injected_file_path_bytes": 255,
        "key_pairs": 100,
        "security_groups": 10
        "security_group_rules": 20,
    }
}

The quotas response body of v2 update API is the following:
{
    "quota_set": {
        "instances": 10,
        "cores": 20,
        "ram": 51200,
        "floating_ips": 10,
        "fixed_ips": -1,
        "metadata_items": 128,
        "injected_files": 5,
        "injected_file_content_bytes": 10240,
        "injected_file_path_bytes": 255,
        "key_pairs": 100,
        "security_groups": 10
        "security_group_rules": 20,
    }
}

The quotas response body of v3 get/get default API is the following:
{
    "quota_set": {
        "id": "231a1e7fd1b344f9874d0334d98b459c",
        "instances": 10,
        "cores": 20,
        "ram": 51200,
        "floating_ips": 10,
        "fixed_ips": -1,
        "metadata_items": 128,
        "key_pairs": 100,
        "security_groups": 10
        "security_group_rules": 20,
    }
}

The quotas response body of v3 get detail API is the following:
{
    "quota_set": {
        "id": "30032cae7b864e5aad58
        "instances": {
            "reserved": 0,
            "limit": 10,
            "in_use": 0
        },
        "cores": {
            "reserved": 0,
            "limit": 20,
            "in_use": 0
        },
        "ram": {
            "reserved": 0,
            "limit": 51200,
            "in_use": 0
        },
        "floating_ips": {
            "reserved": 0,
            "limit": 10,
            "in_use": 0
        },
        "fixed_ips": {
            "reserved": 0,
            "limit": -1,
            "in_use": 0
        },
        "metadata_items": {
            "reserved": 0,
            "limit": 128,
            "in_use": 0
        },
        "key_pairs": {
            "reserved": 0,
            "limit": 100,
            "in_use": 0
        },
        "security_groups": {
            "reserved": 0,
            "limit": 10,
            "in_use": 0
        },
        "security_group_rules": {
            "reserved": 0,
            "limit": 20,
            "in_use": 0
        }
    }
}

Partially implements blueprint nova-api-attribute-test

Change-Id: I3730cde95f6ffea75e3329aed4d13d3bb6cc765b
Adds more testcases to test_telemetry_alarming_api

This submission is to add more testcases in "test_telemetry_alarming_api.py"
test_script. The test cases added are for scenarios "update-alarm",
"set-get-alarm-state", "create_delete_combination_alarm".
Removes alarm create logic from list_alarms method and uses the alarms
in setUp for verification.

Supporting functions "update_alaram", "alarm_get_state", "alarm_get_state"
are added and "put" method is modified in telemetry_client_base.py script.

Change-Id: Ie15cc48ee404db62fb9d74392ed2acc826b852d7
Implements: bp add-basic-ceilometer-tests
Refactor _find_caller into a public test finder utility

This moves the _find_caller utility method from rest_client into it's
own public utility so that we can use it elsewhere in Tempest, like to
uniquely identify which test case fails in a TimeoutException.

This is useful to uniquely fingerprint timeout failures with
elastic-recheck which is not always possible right now because we don't
have multi-line query support with elastic-recheck.

Related-Bug: #1315201

Change-Id: I0cef7697e36a0ecd29c2540a5c283d322b2c62b7
Add in a concurrency aware subunit filter

A live filter for subunit stream that will let us display the
concurrency of the streams as we go.

* This includes the worker id as {#} at the beginning of the lines
* Dumps out stdout/stderr if they are found inline (makes for easier
  debug
* Dumps out pythonlogging on failures if found inline
* Prints skip reasons

Based on I1b529546e005f47aba56b451e1c0d8b0da09fca3, but because
that started as Robert's I couldn't un Abandon it.

Change-Id: Icc99b652e4e8ae85b73bb905a3b704447a63195f
Co-Authored-By: Robert Collins <rbtcollins@hp.com>
Merge "Verify attributes through Nova os-quota-sets API"
Merge "Adds more testcases to test_telemetry_alarming_api"
Merge "Add in a concurrency aware subunit filter"
Merge "Refactor _find_caller into a public test finder utility"
Merge branch 'master' of https://github.com/openstack/tempest