blob: 2acd7cc453622f143902f936ec3d29e3a976f47f [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
Jackie Truongab903f32017-04-10 18:03:27 -040036 # Register ephemeral storage encryption options
37 conf.register_group(project_config.ephemeral_storage_encryption_group)
38 conf.register_opts(project_config.EphemeralStorageEncryptionGroup,
39 project_config.ephemeral_storage_encryption_group)
Colleen Murphy62ec85c2019-04-03 09:27:05 -070040 conf.register_opts(project_config.ImageSignatureVerificationGroup,
41 project_config.image_signature_verification_group)
Ade Leec80b00a2021-02-09 14:49:41 -050042 conf.register_group(
43 project_config.barbican_rbac_scope_verification_group)
44 conf.register_opts(
45 project_config.BarbicanRBACScopeVerificationGroup,
46 project_config.barbican_rbac_scope_verification_group
47 )
Jackie Truongab903f32017-04-10 18:03:27 -040048
Marc Koderer3529ea72016-12-02 13:21:03 +010049 def get_opt_lists(self):
50 return [('service_available', [project_config.service_option])]
Marc Kodererc832c612016-12-12 11:49:10 +010051
52 def get_service_clients(self):
53 v1_params = {
54 'name': 'secret_v1',
55 'service_version': 'secret.v1',
56 'module_path': 'barbican_tempest_plugin.services.key_manager.json',
Peter Hamiltonee389172017-01-12 16:41:45 -050057 'client_names': [
58 'ConsumerClient',
59 'ContainerClient',
Peter Hamiltonf4166be2017-01-20 10:54:33 -050060 'OrderClient',
Peter Hamilton2adeed62017-02-01 12:23:45 -050061 'QuotaClient',
Peter Hamiltonf4166be2017-01-20 10:54:33 -050062 'SecretClient',
63 'SecretMetadataClient'
Peter Hamiltonee389172017-01-12 16:41:45 -050064 ],
Marc Kodererc832c612016-12-12 11:49:10 +010065 }
66 return [v1_params]