Add tempest tests for Consistency Groups

These tempest tests add coverage for all the API's related to
consistency groups in Cinder. They were originally proposed
for upstream tempest in https://review.openstack.org/#/c/252213/
but were not a good fit since they aren't supported by the
reference driver. They have been modified to work as part
of the in-tree tempest plugins for Cinder now.

The tests are behind a new config option for tempest, which
in turn is part of a new config group called 'cinder'. This
was added to avoid any collisions with the 'volume-features-enabled'
or 'volume' groups already in the upstream tempest tests.

To enable them set the following in tempest.conf

[cinder]
consistency_group = True

Then make sure to run tempest with the 'all-plugin' tox environment.

Don't forget to update policy.json to allow for CG API's to be called..

Change-Id: I772ea13ca156e71620d722eee476f222a8653831
Co-Authored-By: Xing Yang <xing.yang@emc.com>
diff --git a/cinder/tests/tempest/plugin.py b/cinder/tests/tempest/plugin.py
index 7760fb9..ed7a912 100644
--- a/cinder/tests/tempest/plugin.py
+++ b/cinder/tests/tempest/plugin.py
@@ -17,6 +17,7 @@
 import os
 
 from cinder.tests.tempest import config as project_config
+
 from tempest import config
 from tempest.test_discover import plugins
 
@@ -33,6 +34,15 @@
         config.register_opt_group(
             conf, project_config.service_available_group,
             project_config.ServiceAvailableGroup)
+        config.register_opt_group(
+            conf, project_config.cinder_group,
+            project_config.CinderGroup
+        )
 
     def get_opt_lists(self):
-        pass
+        return [
+            (project_config.service_available_group.name,
+             project_config.ServiceAvailableGroup),
+            (project_config.cinder_group.name,
+             project_config.CinderGroup),
+        ]