blob: b829a05adb8b143c04dbfd0c8d297ccf32b13236 [file] [log] [blame]
Marc Koderer3529ea72016-12-02 13:21:03 +01001# Copyright 2016 SAP SE
2# All Rights Reserved.
3#
4# Licensed under the Apache License, Version 2.0 (the "License"); you may
5# not use this file except in compliance with the License. You may obtain
6# a copy of the License at
7#
8# http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
12# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
13# License for the specific language governing permissions and limitations
14# under the License.
15
16
17import os
18
19from tempest.test_discover import plugins
20
21from barbican_tempest_plugin import config as project_config
22
23
24class BarbicanTempestPlugin(plugins.TempestPlugin):
25 def load_tests(self):
26 base_path = os.path.split(os.path.dirname(
27 os.path.abspath(__file__)))[0]
28 test_dir = "barbican_tempest_plugin/tests"
29 full_test_dir = os.path.join(base_path, test_dir)
30 return full_test_dir, base_path
31
32 def register_opts(self, conf):
33 conf.register_opt(project_config.service_option,
34 group='service_available')
35
Douglas Mendizábale6544642021-04-01 16:50:38 -050036 conf.register_group(project_config.barbican_tempest_group)
37 conf.register_opts(project_config.BarbicanGroupOpts,
38 project_config.barbican_tempest_group)
39
Jackie Truongab903f32017-04-10 18:03:27 -040040 # Register ephemeral storage encryption options
41 conf.register_group(project_config.ephemeral_storage_encryption_group)
42 conf.register_opts(project_config.EphemeralStorageEncryptionGroup,
43 project_config.ephemeral_storage_encryption_group)
Colleen Murphy62ec85c2019-04-03 09:27:05 -070044 conf.register_opts(project_config.ImageSignatureVerificationGroup,
45 project_config.image_signature_verification_group)
Ade Leec80b00a2021-02-09 14:49:41 -050046 conf.register_group(
47 project_config.barbican_rbac_scope_verification_group)
48 conf.register_opts(
49 project_config.BarbicanRBACScopeVerificationGroup,
50 project_config.barbican_rbac_scope_verification_group
51 )
Jackie Truongab903f32017-04-10 18:03:27 -040052
Marc Koderer3529ea72016-12-02 13:21:03 +010053 def get_opt_lists(self):
54 return [('service_available', [project_config.service_option])]
Marc Kodererc832c612016-12-12 11:49:10 +010055
56 def get_service_clients(self):
57 v1_params = {
58 'name': 'secret_v1',
59 'service_version': 'secret.v1',
60 'module_path': 'barbican_tempest_plugin.services.key_manager.json',
Peter Hamiltonee389172017-01-12 16:41:45 -050061 'client_names': [
62 'ConsumerClient',
63 'ContainerClient',
Peter Hamiltonf4166be2017-01-20 10:54:33 -050064 'OrderClient',
Peter Hamilton2adeed62017-02-01 12:23:45 -050065 'QuotaClient',
Peter Hamiltonf4166be2017-01-20 10:54:33 -050066 'SecretClient',
Douglas Mendizábale6544642021-04-01 16:50:38 -050067 'SecretMetadataClient',
Douglas Mendizábal63b174e2021-04-05 14:53:18 -050068 'SecretStoresClient',
69 'TransportKeyClient'
Peter Hamiltonee389172017-01-12 16:41:45 -050070 ],
Marc Kodererc832c612016-12-12 11:49:10 +010071 }
72 return [v1_params]