Add config for Telemetry

This patch add the configuration for Telemetry.

Partially implements: blueprint add-basic-ceilometer-tests

Change-Id: I8859857c5cf469045f66631c3d52edcb765035d7
diff --git a/etc/tempest.conf.sample b/etc/tempest.conf.sample
index e7145e7..8d0e978 100644
--- a/etc/tempest.conf.sample
+++ b/etc/tempest.conf.sample
@@ -141,39 +141,32 @@
 #operator_role=Member
 
 
-[network]
+[volume-feature-enabled]
 
 #
 # Options defined in tempest.config
 #
 
-# Catalog type of the Neutron service. (string value)
-#catalog_type=network
+# Runs Cinder multi-backend test (requires 2 backends)
+# (boolean value)
+#multi_backend=false
 
-# The network region name to use. If empty, the value of
-# identity.region is used instead. If no such region is found
-# in the service catalog, the first found one is used. (string
-# value)
-#region=
+# A list of enabled extensions with a special entry all which
+# indicates every extension is enabled (list value)
+#api_extensions=all
 
-# The cidr block to allocate tenant networks from (string
-# value)
-#tenant_network_cidr=10.100.0.0/16
+# Is the v1 volume API enabled (boolean value)
+#api_v1=true
 
-# The mask bits for tenant networks (integer value)
-#tenant_network_mask_bits=28
 
-# Whether tenant network connectivity should be evaluated
-# directly (boolean value)
-#tenant_networks_reachable=false
+[telemetry]
 
-# Id of the public network that provides external connectivity
-# (string value)
-#public_network_id=
+#
+# Options defined in tempest.config
+#
 
-# Id of the public router that provides external connectivity
-# (string value)
-#public_router_id=
+# Catalog type of the Telemetry service. (string value)
+#catalog_type=metering
 
 
 [data_processing]
@@ -220,24 +213,6 @@
 #api_extensions=all
 
 
-[volume-feature-enabled]
-
-#
-# Options defined in tempest.config
-#
-
-# Runs Cinder multi-backend test (requires 2 backends)
-# (boolean value)
-#multi_backend=false
-
-# A list of enabled extensions with a special entry all which
-# indicates every extension is enabled (list value)
-#api_extensions=all
-
-# Is the v1 volume API enabled (boolean value)
-#api_v1=true
-
-
 [image-feature-enabled]
 
 #
@@ -419,21 +394,39 @@
 #admin_password=pass
 
 
-[cli]
+[network]
 
 #
-# Options defined in tempest.cli
+# Options defined in tempest.config
 #
 
-# enable cli tests (boolean value)
-#enabled=true
+# Catalog type of the Neutron service. (string value)
+#catalog_type=network
 
-# directory where python client binaries are located (string
+# The network region name to use. If empty, the value of
+# identity.region is used instead. If no such region is found
+# in the service catalog, the first found one is used. (string
 # value)
-#cli_dir=/usr/local/bin
+#region=
 
-# Number of seconds to wait on a CLI timeout (integer value)
-#timeout=15
+# The cidr block to allocate tenant networks from (string
+# value)
+#tenant_network_cidr=10.100.0.0/16
+
+# The mask bits for tenant networks (integer value)
+#tenant_network_mask_bits=28
+
+# Whether tenant network connectivity should be evaluated
+# directly (boolean value)
+#tenant_networks_reachable=false
+
+# Id of the public network that provides external connectivity
+# (string value)
+#public_network_id=
+
+# Id of the public router that provides external connectivity
+# (string value)
+#public_router_id=
 
 
 [stress]
@@ -657,6 +650,23 @@
 #build_interval=1
 
 
+[cli]
+
+#
+# Options defined in tempest.cli
+#
+
+# enable cli tests (boolean value)
+#enabled=true
+
+# directory where python client binaries are located (string
+# value)
+#cli_dir=/usr/local/bin
+
+# Number of seconds to wait on a CLI timeout (integer value)
+#timeout=15
+
+
 [dashboard]
 
 #
diff --git a/tempest/config.py b/tempest/config.py
index bf45b4b..d42edc9 100644
--- a/tempest/config.py
+++ b/tempest/config.py
@@ -473,6 +473,16 @@
 ]
 
 
+telemetry_group = cfg.OptGroup(name='telemetry',
+                               title='Telemetry Service Options')
+
+TelemetryGroup = [
+    cfg.StrOpt('catalog_type',
+               default='metering',
+               help="Catalog type of the Telemetry service."),
+]
+
+
 dashboard_group = cfg.OptGroup(name="dashboard",
                                title="Dashboard options")
 
@@ -700,6 +710,7 @@
         register_opt_group(cfg.CONF, object_storage_feature_group,
                            ObjectStoreFeaturesGroup)
         register_opt_group(cfg.CONF, orchestration_group, OrchestrationGroup)
+        register_opt_group(cfg.CONF, telemetry_group, TelemetryGroup)
         register_opt_group(cfg.CONF, dashboard_group, DashboardGroup)
         register_opt_group(cfg.CONF, data_processing_group,
                            DataProcessingGroup)
@@ -723,6 +734,7 @@
         self.object_storage_feature_enabled = cfg.CONF[
             'object-storage-feature-enabled']
         self.orchestration = cfg.CONF.orchestration
+        self.telemetry = cfg.CONF.telemetry
         self.dashboard = cfg.CONF.dashboard
         self.data_processing = cfg.CONF.data_processing
         self.boto = cfg.CONF.boto