From d1cab776db89555db0ebde942cbb92bbd19e2283 Mon Sep 17 00:00:00 2001 From: Takashi Kajinami Date: Sat, 5 Oct 2024 12:34:44 +0900 Subject: [PATCH] Add option to select service type ... following the core tempest and the other tempest plugins. Change-Id: I1fbafa81138c4a9e99b6ac0e95ece440b31517fa --- barbican_tempest_plugin/config.py | 3 +++ .../services/key_manager/json/base.py | 2 +- .../services/key_manager/json/container_client.py | 6 ++++-- .../tests/scenario/barbican_manager.py | 14 +++++++++----- 4 files changed, 17 insertions(+), 8 deletions(-) diff --git a/barbican_tempest_plugin/config.py b/barbican_tempest_plugin/config.py index ad32de6..3dcf25b 100644 --- a/barbican_tempest_plugin/config.py +++ b/barbican_tempest_plugin/config.py @@ -44,6 +44,9 @@ KeyManagerOpts = [ "If both values are not specified, Tempest avoids tests " "which require a microversion. Valid values are string " "with format 'X.Y' or string 'latest'"), + cfg.StrOpt("catalog_type", + default="key-manager", + help="Catalog type of the key manager service."), cfg.StrOpt('region', default='regionOne', help="The barbican region name to use. If no such region is" diff --git a/barbican_tempest_plugin/services/key_manager/json/base.py b/barbican_tempest_plugin/services/key_manager/json/base.py index d4a2a8a..e36c587 100644 --- a/barbican_tempest_plugin/services/key_manager/json/base.py +++ b/barbican_tempest_plugin/services/key_manager/json/base.py @@ -14,7 +14,7 @@ from tempest.lib.common import rest_client CONF = config.CONF -_DEFAULT_SERVICE_TYPE = 'key-manager' +_DEFAULT_SERVICE_TYPE = CONF.key_manager.catalog_type _DEFAULT_REGION = CONF.key_manager.region _MICROVERSION_HEADER = 'OpenStack-API-Version' diff --git a/barbican_tempest_plugin/services/key_manager/json/container_client.py b/barbican_tempest_plugin/services/key_manager/json/container_client.py index 812e722..8ec1541 100644 --- a/barbican_tempest_plugin/services/key_manager/json/container_client.py +++ b/barbican_tempest_plugin/services/key_manager/json/container_client.py @@ -56,7 +56,8 @@ class ContainerClient(base.BarbicanTempestClient): def add_secret_to_container(self, container_id, secret_id, **kwargs): uri = "v1/containers/%s/secrets" % container_id kwargs['secret_ref'] = "%s/v1/secrets/%s" % ( - self.auth_provider.base_url({"service": "key-manager"}), + self.auth_provider.base_url( + {"service": CONF.key_manager.catalog_type}), secret_id ) @@ -70,7 +71,8 @@ class ContainerClient(base.BarbicanTempestClient): def delete_secret_from_container(self, container_id, secret_id, **kwargs): uri = "v1/containers/%s/secrets" % container_id kwargs['secret_ref'] = "%s/v1/secrets/%s" % ( - self.auth_provider.base_url({"service": "key-manager"}), + self.auth_provider.base_url( + {"service": CONF.key_manager.catalog_type}), secret_id ) diff --git a/barbican_tempest_plugin/tests/scenario/barbican_manager.py b/barbican_tempest_plugin/tests/scenario/barbican_manager.py index 7460a38..8ae273f 100644 --- a/barbican_tempest_plugin/tests/scenario/barbican_manager.py +++ b/barbican_tempest_plugin/tests/scenario/barbican_manager.py @@ -95,16 +95,20 @@ class BarbicanScenarioTest(mgr.ScenarioTest): os = getattr(cls, 'os_%s' % cls.credentials[0]) os_adm = getattr(cls, 'os_%s' % cls.credentials[1]) cls.consumer_client = os.secret_v1.ConsumerClient( - service='key-manager' + service=CONF.key_manager.catalog_type ) cls.container_client = os.secret_v1.ContainerClient( - service='key-manager' + service=CONF.key_manager.catalog_type, + ) + cls.order_client = os.secret_v1.OrderClient( + service=CONF.key_manager.catalog_type + ) + cls.secret_client = os.secret_v1.SecretClient( + service=CONF.key_manager.catalog_type ) - cls.order_client = os.secret_v1.OrderClient(service='key-manager') - cls.secret_client = os.secret_v1.SecretClient(service='key-manager') cls.secret_consumer_client = os.secret_v1_1.SecretConsumerClient() cls.secret_metadata_client = os.secret_v1.SecretMetadataClient( - service='key-manager' + service=CONF.key_manager.catalog_type, ) cls.secret_consumer_client = os.secret_v1_1.VersionClient()