Fix hardcoded gateway in IPV6 subnet api tests

This patch removes the hardcoding and calculates the Gateway-ip
based on the tenant_network_v6_cidr value.

Change-Id: Iee4c450714caf49d6753d9455e6ab3698b64340d
Closes-Bug: #1318962
Make unable to ping log messages appropriate level

The ping from an ssh connection checks in _check_remote_connectivity()
aren't necessarily expected to pass on the first attempt. However,
every time the ping was unsuccessful the method would log an
exception which is too severe a log for an expected error. This
commit uses a more appropriate log level for this case.

Change-Id: I8068fa85472259676acebd99b9d191065661e101
Running without keystone v3 doesn't require uri_v3

uri_v3 is not required if api_v3 is false.

Change-Id: I5d63ca38b9f07ea07383472fb7fa82b369c72216
Closes-bug: #1295132
Don't use swift roles when no swift

If openstack doesn't have Swift installation this role assign is
unnecessary and cause bugs and fails for other tests.

Change-Id: If3bbc49cde6144e883daaf77b8f551a0562c84c8
remove default=None for config options

In the cfg module default=None is set as the default value.

Change-Id: I235decf26827bcb8076867f63c005ce5a80554fa
Move baremetal API tests to an /admin subdir

To avoid confusion, move all baremetal API tests to api/baremetal/admin and
add a README.rst explaining that the API provided by Ironic is meant to be used
as an admin and service level API.

Change-Id: Ib49b6d5937da6eedc3028a1f831552cf02d9f69e
Update compute attach tests to use "volume_device_name"

Some attach tests in the compute suites are using hard-coded
values for the volume device name. These should be replaced
with the compute.volume_device_name in tempest.conf.

Change-Id: I2f5da22b5f1bbd3910e4226b96e73106aa75c65a
test_neutron_resources to read template's values

test_neutron_resources create resources based on defined template
but the expected values are hard coded in this tests those should be
read from template.

Change-Id: I5ecc8742bab4c5d940c134945816c47acfba2282
Add network tags to test_quotas_negative

Partially implements bp add-service-tags

Change-Id: I37af14a34fa968874b4887616eaf8540f20fe7c1
If no volume, don't delete volume in teardown

If exception is thrown in setupClass before volume is created,
tearDownClass needn't delete volume.

Change-Id: I91c7eff8ec147b0ce3a9ea3e6c8d906ba68412c2
Closes-Bug: 1350167
Add compute tags to tempest/api/database/flavors test

Partially implements bp add-service-tags

Change-Id: Idfe3f86cfdb529340e5e290dd5dc8e9b549f7f5b
Add min_client_version decorator for CLI tests

This adds the min_client_version decorator to be used in the CLI tests.
The decorator is used skip CLI tests where the command being tested
isn't available in the version of the client we're testing against.

The cmd method is pulled out of the ClientTestBase class so it can be
used by the decorator and is renamed so it does not conflict with the
cmd argument passed to it.

To start using the decorator and show how it works, two known CLI tests
are decorated for minimum version checks on their clients.

Part of blueprint minversion-check-for-cli-tests

Change-Id: I8a0ee390048870d450772fa064d0dc2daa2b7036
Add a new credential provider to use a list of creds

This commit adds a new credential provider to use credentials provided
from a list of available credentials.

Partially implements bp test-accounts
Change-Id: I69c3105f8b413102ea567ccb92965572ce03d679
Change 'ceilometer' tag to 'telemetry' and add tags to cli tests

Partially implements bp add-service-tags

Change-Id: I8deca221918d9819c7a9f0a621fd3a21c6f66024
Stop leaking identity resources in teardown_all()

teardown_all() tries to delete all resources. But if an exception
happens, the rest of resources are remained and it seems to happen
frequently.
This commit fixes it.

Partially Implements: blueprint stop-leaking
Change-Id: I671b2262ea5ed5bf7d78149cf88f2894b6bf6508
Avoid unneeded use of set, and use list instead

This doesn't change anything, except fixing an unneeded compatibility
issue with py2.6.

Change-Id: I4bb7f6bea9fd34fdec8af3eed702c5a8743d3178
Removes test_force_delete_server_invalid_state negative test

Commit I06a476701ccb47d8f7fd6e43c394ccb3fac2b3aa allows the force
deleting of running instances as well as those in soft-delete state
so this negative test is no longer appropriate.

Related-Bug: #1351001
Change-Id: Ia6d09fea753196a8bc9f33ac8acaae49f1d306e7
Allow new quota types

On Nova commit Ib281e43eabfbd176454bde7f0622d46fb04fcb79, we are trying
a new quota type for server groups.
However, current Tempest denies unexpected quota types on its own tests,
and we cannot add the new quota without Tempest changes.
This patch changes quota tests for checking mandatory quota existence
and allowing new quota types.

Change-Id: I4409a7240dc0a3fa1e11c64c5f5a56ca656b70a4
Router API Tests Enhancements

Add test to creation of router with snat rule
  - Create a router with default attributes
  - Verify the default snat attributes
  - Creating a router using admin priviledges for a tenant
     with snat value True/False
  - Verify routers for snat value True/False by overwriting
     through admin tenant.

Change-Id: Icf2f56f7aa7a2dc736c57daad6d2d5c37e0d9e32
Remove skipping flavor_access_add/remove related tests

At change Ibf741059c3a7a94543f1a2230fe7048692e1db0c, skip the
flavor_access_add/remove related tests for changing 'tenant' to
'project' in nova v3 REST API. But the v3 API plan is changed,
this kind of change will be introduce back when we have micro-version.
So remove the skip decorator for now.

Change-Id: I9ba1f0c10b7e976df303a9800bea2eea62f43891