Add command to fix/generate idempotent IDs

This patch adds a "uuidgen" command that will fix all issues
related to idempotent IDs in our tests. Also modifies pep8 to
detect these issues.
This command already exists in tempest and is required for cinder
tempest plugin as we had undetected issues in our tests that
got merged which are also fixed in this patch. The issues are as
follows:

1) Missing idempotent IDs in test_capabilities
2) Duplicate idempotent IDs in the following backup tests
    a) test_backup_create_and_restore_to_an_existing_volume
    b) test_incr_backup_create_and_restore_to_an_existing_volume

Change-Id: I6b34fd67af4c302ff17244143506d8c8a8247eb6
diff --git a/cinder_tempest_plugin/api/volume/test_volume_backup.py b/cinder_tempest_plugin/api/volume/test_volume_backup.py
index 7982a83..7ac33c2 100644
--- a/cinder_tempest_plugin/api/volume/test_volume_backup.py
+++ b/cinder_tempest_plugin/api/volume/test_volume_backup.py
@@ -67,7 +67,7 @@
         self.assertEqual(src_vol['id'], restore['volume_id'])
         self.assertEqual(backup['id'], restore['backup_id'])
 
-    @decorators.idempotent_id('b5d837b0-7066-455d-88fc-4a721a899306')
+    @decorators.idempotent_id('457359e2-a663-4758-8f76-06d392dfd7c7')
     def test_incr_backup_create_and_restore_to_an_existing_volume(self):
         """Test incr backup create and restore to an existing volume."""
         # Create volume
diff --git a/cinder_tempest_plugin/rbac/v3/test_capabilities.py b/cinder_tempest_plugin/rbac/v3/test_capabilities.py
index 1fa542d..7024e30 100644
--- a/cinder_tempest_plugin/rbac/v3/test_capabilities.py
+++ b/cinder_tempest_plugin/rbac/v3/test_capabilities.py
@@ -12,6 +12,7 @@
 
 import abc
 
+from tempest.lib import decorators
 from tempest.lib import exceptions
 
 from cinder_tempest_plugin.api.volume import base
@@ -56,6 +57,7 @@
 
     credentials = ['project_admin', 'system_admin']
 
+    @decorators.idempotent_id('1fdbe493-e58f-48bf-bb38-52003eeef8cb')
     def test_get_capabilities(self):
         pools = self.admin_stats_client.list_pools()['pools']
         host_name = pools[0]['name']
@@ -67,6 +69,7 @@
 
     credentials = ['project_member', 'project_admin', 'system_admin']
 
+    @decorators.idempotent_id('dbaf51de-fafa-4f55-875f-7537524489ab')
     def test_get_capabilities(self):
         pools = self.admin_stats_client.list_pools()['pools']
         host_name = pools[0]['name']
diff --git a/tox.ini b/tox.ini
index c9c91ad..d217818 100644
--- a/tox.ini
+++ b/tox.ini
@@ -20,7 +20,12 @@
 commands = stestr run --slowest {posargs}
 
 [testenv:pep8]
-commands = flake8 {posargs}
+commands =
+    flake8 {posargs}
+    check-uuid --package cinder_tempest_plugin
+
+[testenv:uuidgen]
+commands = check-uuid --fix --package cinder_tempest_plugin
 
 [testenv:venv]
 commands = {posargs}