Fix the alarm scenario gabbi test

the main problem was that it used a `ceph_account` resource type
that in fact is also created by ceilo itself, and ceilo
can add measures with this resource type when ceph is present,
which throws the test off (e.g. does not let deleting the resource
type).

This patch renames relevant entities created and used by the test
to be named tempest-test-.. or similar,
and adds some checks that the resources, resource type and archive
policy were in fact deleted, as well as polling deleting the archive
policy as it will only be allowed to be deleted once all the measures
that used this archive policy expire.

Closes-Issue: PRODX-26372
Change-Id: Ib027e1f98ec3d8ac9a5d2d5c01c4db08eebda3ee
diff --git a/telemetry_tempest_plugin/scenario/telemetry_integration_gabbits/aodh-gnocchi-threshold-alarm.yaml b/telemetry_tempest_plugin/scenario/telemetry_integration_gabbits/aodh-gnocchi-threshold-alarm.yaml
index 676d02f..3e486b3 100644
--- a/telemetry_tempest_plugin/scenario/telemetry_integration_gabbits/aodh-gnocchi-threshold-alarm.yaml
+++ b/telemetry_tempest_plugin/scenario/telemetry_integration_gabbits/aodh-gnocchi-threshold-alarm.yaml
@@ -3,12 +3,14 @@
 #
 #   user_id        : c8ecb587-d38c-426f-a58d-22b8d4a9a1d3
 #   project_id     : 709f6ed6-bfb3-4649-b303-0019a7f6aef2
+#   resource type  : tempest_test_resource
+#   resource name  : 662e46f3-8c06-430c-8a9c-adcaedd1272c
+#   archive policy : tempest-test-policy
 #   alarm name     : gabbi-gnocchi-threshold-resource-alarm
-#   resource_id    : gabbi-mock-resource
-#   archive policy : gabbiliveceph
 #
 
 defaults:
+    verbose: true
     request_headers:
         x-auth-token: $ENVIRON['ADMIN_TOKEN']
 
@@ -17,15 +19,15 @@
     # Setup gnocchi archive policy/resource type/resource/metrics
     #
 
-    - name: SETUP. create archive policy gabbiliveceph
-      desc: create archve policy 'gabbiliveceph' for tests
+    - name: SETUP. create archive policy tempest-test-policy
+      desc: create archve policy 'tempest-test-policy' for tests, though it might already be there
       POST: $ENVIRON['GNOCCHI_SERVICE_URL']/v1/archive_policy
       # 409 when policy with such name already exists
       status: 201 || 409
       request_headers:
           content-type: application/json
       data:
-          name: gabbiliveceph
+          name: tempest-test-policy
           back_window: 0
           definition:
               - granularity: 1 second
@@ -40,7 +42,7 @@
               - max
 
     - name: check properties of created or existing archive policy
-      GET: $ENVIRON['GNOCCHI_SERVICE_URL']/v1/archive_policy/gabbiliveceph
+      GET: $ENVIRON['GNOCCHI_SERVICE_URL']/v1/archive_policy/tempest-test-policy
       status: 200
       request_headers:
           content-type: application/json
@@ -48,17 +50,17 @@
           $.back_window: 0
           $.aggregation_methods.`len`: 3
 
-    - name: create resource type ceph_account
-      desc: needed to create a resource
+    - name: create resource type tempest_test_resource
+      desc: create a resource type so that a resource can be created
       POST: $ENVIRON['GNOCCHI_SERVICE_URL']/v1/resource_type
       status: 201 || 409
       request_headers:
           content-type: application/json
       data:
-          name: ceph_account
+          name: tempest_test_resource
 
-    - name: create resource of ceph_account type
-      POST: $ENVIRON['GNOCCHI_SERVICE_URL']/v1/resource/ceph_account
+    - name: create resource of tempest_test_resource type
+      POST: $ENVIRON['GNOCCHI_SERVICE_URL']/v1/resource/tempest_test_resource
       request_headers:
           content-type: application/json
       data:
@@ -66,23 +68,13 @@
           user_id:      27e342e4-4489-424f-a7e4-ba8ed9ad729c
           project_id:   d6d32769-c351-4758-b0a2-458fa1a065a3
           metrics:
-              radosgw.objects:
-                  archive_policy_name: gabbiliveceph
-              radosgw.objects.size:
-                  archive_policy_name: gabbiliveceph
-              radosgw.objects.containers:
-                  archive_policy_name: gabbiliveceph
-              radosgw.api.request:
-                  archive_policy_name: gabbiliveceph
-              radosgw.containers.objects:
-                  archive_policy_name: gabbiliveceph
-              radosgw.containers.objects.size:
-                  archive_policy_name: gabbiliveceph
+              tempest.test.metric:
+                  archive_policy_name: tempest-test-policy
       status: 201
       response_json_paths:
           $.user_id:    27e342e4-4489-424f-a7e4-ba8ed9ad729c
           $.project_id: d6d32769-c351-4758-b0a2-458fa1a065a3
-          $.metrics.`len`: 6
+          $.metrics.`len`: 1
 
     #
     # Actual tests
@@ -117,7 +109,7 @@
           alarm_actions:
               - "http://site:8000/gnocchi-threshold-resource"
           alarm_id: null
-          description: An gabbilive threshold based alarm
+          description: An gnocchi threshold based alarm
           enabled: true
           insufficient_data_actions:
               - "http://site:8000/nodata-gnocchi-threshold-resource"
@@ -131,13 +123,13 @@
           type: gnocchi_resources_threshold
           gnocchi_resources_threshold_rule:
               evaluation_periods: 3
-              metric: "radosgw.objects.size"
+              metric: "tempest.test.metric"
               resource_id: "662e46f3-8c06-430c-8a9c-adcaedd1272c"
               aggregation_method: "mean"
               granularity: 60
               threshold: 5.0
               comparison_operator: "ge"
-              resource_type: ceph_account
+              resource_type: tempest_test_resource
           user_id: c8ecb587-d38c-426f-a58d-22b8d4a9a1d3
       status: 201
       response_json_paths:
@@ -170,7 +162,7 @@
           alarm_actions:
               - "http://site:8000/gnocchi-threshold-resource"
           alarm_id: null
-          description: An gabbilive threshold based alarm
+          description: An gnocchi threshold based alarm
           enabled: true
           insufficient_data_actions:
               - "http://site:8000/nodata-gnocchi-threshold-resource"
@@ -184,13 +176,13 @@
           type: gnocchi_resources_threshold
           gnocchi_resources_threshold_rule:
               evaluation_periods: 3
-              metric: "radosgw.objects.size"
+              metric: "tempest.test.metric"
               resource_id: "662e46f3-8c06-430c-8a9c-adcaedd1272c"
               aggregation_method: "mean"
               granularity: 60
               threshold: 5.0
               comparison_operator: "ge"
-              resource_type: ceph_account
+              resource_type: tempest_test_resource
           user_id: c8ecb587-d38c-426f-a58d-22b8d4a9a1d3
       response_json_paths:
           $.name: gabbi-gnocchi-threshold-resource-alarm
@@ -263,8 +255,8 @@
           $.alarm_actions: ["http://site:8000/gnocchi-threshold-resource"]
           $.name: gabbi-gnocchi-threshold-resource-alarm
           $.gnocchi_resources_threshold_rule.resource_id: "662e46f3-8c06-430c-8a9c-adcaedd1272c"
-          $.gnocchi_resources_threshold_rule.metric: "radosgw.objects.size"
-          $.gnocchi_resources_threshold_rule.resource_type: "ceph_account"
+          $.gnocchi_resources_threshold_rule.metric: "tempest.test.metric"
+          $.gnocchi_resources_threshold_rule.resource_type: "tempest_test_resource"
           $.user_id: c8ecb587-d38c-426f-a58d-22b8d4a9a1d3
 
     #
@@ -299,20 +291,42 @@
       GET: $ENVIRON['GNOCCHI_SERVICE_URL']/v1/resource/generic/662e46f3-8c06-430c-8a9c-adcaedd1272c
       status: 200
 
-    - name: CLEANUP. delete test ceph_resource '662e46f3-8c06-430c-8a9c-adcaedd1272c'
-      desc: delete ceph_account resource 662e46f3-8c06-430c-8a9c-adcaedd1272c
+    - name: CLEANUP. delete test tempest_test_resource '662e46f3-8c06-430c-8a9c-adcaedd1272c'
+      desc: delete tempest_test_resource resource 662e46f3-8c06-430c-8a9c-adcaedd1272c
       DELETE: $ENVIRON['GNOCCHI_SERVICE_URL']/v1/resource/generic/$RESPONSE['$.id']
       status: 204
 
-    - name: CLEANUP. delete resource type ceph_account
-      DELETE: $ENVIRON['GNOCCHI_SERVICE_URL']/v1/resource_type/ceph_account
+    - name: CLEANUP. verify there's no resources of type tempest_test_resource
+      GET: $ENVIRON['GNOCCHI_SERVICE_URL']/v1/resource/tempest_test_resource
+      status: 200
       poll:
           count: 360
           delay: 1
+      response_json_paths:
+          $.`len`: 0
+
+    - name: CLEANUP. delete resource type tempest_test_resource
+      DELETE: $ENVIRON['GNOCCHI_SERVICE_URL']/v1/resource_type/tempest_test_resource
       status: 204
 
-    - name: CLEANUP. delete archive
-      DELETE: $ENVIRON['GNOCCHI_SERVICE_URL']/v1/archive_policy/gabbiliveceph
-      status: 204
-      xfail: True
+    - name: CLEANUP. wait until resource type tempest_test_resource is deleted
+      GET: $ENVIRON['GNOCCHI_SERVICE_URL']/v1/resource_type/tempest_test_resource
+      status: 404
+      poll:
+          count: 360
+          delay: 1
 
+    - name: CLEANUP. delete archive policy
+      desc: keep trying deleting archive policy, responds 400 until relevant measures expire
+      DELETE: $ENVIRON['GNOCCHI_SERVICE_URL']/v1/archive_policy/tempest-test-policy
+      status: 204
+      poll:
+          count: 360
+          delay: 1
+
+    - name: CLEANUP. verify archive policy deleted
+      DELETE: $ENVIRON['GNOCCHI_SERVICE_URL']/v1/archive_policy/tempest-test-policy
+      status: 404
+      poll:
+          count: 360
+          delay: 1