Remove force_tenant_isolation from Cinder tests

The force_tenant_isolation flag was hard-coded to true in four of the
volume test classes. This flag, when set to true, forces Tempest to
create projects and users dynamically, which is a big problem if your
cluster has an immutable user source such as LDAP. Furthermore, if
the user wants to run these tests against a pre-defined user accounts
file, it is not possible without removing the hard-coded flag.

This change removes the hard-coded flag from the Cinder volume test
files that have it. Also, in the cases where there is a resource_setup
function defined and it changed the quota set on the primary project,
this change adds the code in resource_setup to save the original quota
values and the addClassResourceCleanup code to revert those changes
back to their original quota values, just in case the pre-provisioned
accounts (account.yaml) are used rather than dynamic credentials. And
because the AbsoluteLimitsTests class tests no longer need forced
tenant isolation, the class is changed to inherit from BaseVolumeTest
instead of BaseVolumeAdminTest, and the resource_setup() is changed
to save the current limits for comparison in the test case (for the
case where pre-provisioned account volume limits were modified from
their default values).

This change has been tested using dynamic user and project creation and
also with pre-provisioned credentials (accounts.yaml), and all tests
work both ways, depending on how its configured in etc/tempest.conf.
There are no resource leaks or quota-related side effects either way.

Closes-Bug: #1734776
Change-Id: I903be7bef81f162685ed448ba0d19901dca00bf1
4 files changed