blob: 3d29db1c1635bd8f629aa17d2afd2807ae7ec765 [file] [log] [blame]
Marc Koderer0abc93b2015-07-15 09:18:35 +02001# Copyright 2014 Mirantis Inc.
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
16from __future__ import print_function
17
18from oslo_config import cfg
19
Nishant Kumar02278302016-10-01 12:50:39 +053020service_option = cfg.BoolOpt("manila",
21 default=True,
22 help="Whether or not manila is expected to be "
23 "available")
Marc Koderer0abc93b2015-07-15 09:18:35 +020024
25share_group = cfg.OptGroup(name="share", title="Share Service Options")
26
27ShareGroup = [
28 cfg.StrOpt("min_api_microversion",
Clinton Knighte5c8f092015-08-27 15:00:23 -040029 default="2.0",
Marc Koderer0abc93b2015-07-15 09:18:35 +020030 help="The minimum api microversion is configured to be the "
31 "value of the minimum microversion supported by Manila."),
32 cfg.StrOpt("max_api_microversion",
Lucio Seki37056942019-01-24 15:40:20 -020033 default="2.49",
Marc Koderer0abc93b2015-07-15 09:18:35 +020034 help="The maximum api microversion is configured to be the "
35 "value of the latest microversion supported by Manila."),
36 cfg.StrOpt("region",
37 default="",
38 help="The share region name to use. If empty, the value "
39 "of identity.region is used instead. If no such region "
40 "is found in the service catalog, the first found one is "
41 "used."),
42 cfg.StrOpt("catalog_type",
43 default="share",
44 help="Catalog type of the Share service."),
45 cfg.StrOpt('endpoint_type',
46 default='publicURL',
47 choices=['public', 'admin', 'internal',
48 'publicURL', 'adminURL', 'internalURL'],
49 help="The endpoint type to use for the share service."),
50 cfg.BoolOpt("multitenancy_enabled",
51 default=True,
52 help="This option used to determine backend driver type, "
53 "multitenant driver uses share-networks, but "
54 "single-tenant doesn't."),
Valeriy Ponomaryovc5dae272016-06-10 18:29:24 +030055 cfg.BoolOpt("create_networks_when_multitenancy_enabled",
56 default=True,
57 help="This option is used only when other "
58 "'multitenancy_enabled' option is set to 'True'. "
59 "If this one is set to True, then tempest will create "
60 "neutron networks for each new manila share-network "
61 "it creates. Else it will use manila share-networks with "
62 "empty values (case of StandAloneNetworkPlugin and "
63 "NeutronSingleNetworkPlugin)."),
Marc Koderer0abc93b2015-07-15 09:18:35 +020064 cfg.ListOpt("enable_protocols",
65 default=["nfs", "cifs"],
66 help="First value of list is protocol by default, "
67 "items of list show enabled protocols at all."),
68 cfg.ListOpt("enable_ip_rules_for_protocols",
69 default=["nfs", "cifs", ],
70 help="Selection of protocols, that should "
71 "be covered with ip rule tests"),
72 cfg.ListOpt("enable_user_rules_for_protocols",
73 default=[],
74 help="Selection of protocols, that should "
75 "be covered with user rule tests"),
76 cfg.ListOpt("enable_cert_rules_for_protocols",
77 default=["glusterfs", ],
78 help="Protocols that should be covered with cert rule tests."),
John Spray061b1452015-11-18 13:15:32 +000079 cfg.ListOpt("enable_cephx_rules_for_protocols",
80 default=["cephfs", ],
81 help="Protocols to be covered with cephx rule tests."),
Marc Koderer0abc93b2015-07-15 09:18:35 +020082 cfg.StrOpt("username_for_user_rules",
83 default="Administrator",
84 help="Username, that will be used in user tests."),
Rodrigo Barbieri797257e2017-11-21 11:00:45 -020085 cfg.StrOpt("override_ip_for_nfs_access",
86 help="Forces access rules to be as specified on NFS scenario"
87 " tests. This can used for working around multiple "
88 "NATs between the VMs and the storage controller."),
Marc Koderer0abc93b2015-07-15 09:18:35 +020089 cfg.ListOpt("enable_ro_access_level_for_protocols",
90 default=["nfs", ],
91 help="List of protocols to run tests with ro access level."),
Valeriy Ponomaryovad55dc52015-09-23 13:54:00 +030092
93 # Capabilities
94 cfg.StrOpt("capability_storage_protocol",
95 deprecated_name="storage_protocol",
Marc Koderer0abc93b2015-07-15 09:18:35 +020096 default="NFS_CIFS",
97 help="Backend protocol to target when creating volume types."),
Valeriy Ponomaryovad55dc52015-09-23 13:54:00 +030098 cfg.BoolOpt("capability_snapshot_support",
99 help="Defines extra spec that satisfies specific back end "
100 "capability called 'snapshot_support' and will be used "
101 "for setting up custom share type. Defaults to value of "
102 "other config option 'run_snapshot_tests'."),
Clinton Knight4699a8c2016-08-16 22:36:13 -0400103 cfg.BoolOpt("capability_create_share_from_snapshot_support",
104 help="Defines extra spec that satisfies specific back end "
105 "capability called 'create_share_from_snapshot_support' "
106 "and will be used for setting up a custom share type. "
107 "Defaults to the value of run_snapshot_tests. Set it to "
108 "False if the driver being tested does not support "
109 "creating shares from snapshots."),
Clinton Knight7f16b8c2016-06-08 13:46:51 -0700110 cfg.BoolOpt("capability_revert_to_snapshot_support",
Rodrigo Barbieri1a1b91a2017-02-01 10:15:41 -0200111 deprecated_for_removal=True,
112 deprecated_reason="Redundant configuration option. Please use "
113 "'run_revert_to_snapshot_tests' config "
114 "option instead.",
Clinton Knight7f16b8c2016-06-08 13:46:51 -0700115 help="Defines extra spec that satisfies specific back end "
116 "capability called 'revert_to_snapshot_support' "
117 "and will be used for setting up custom share type. "
118 "Defaults to the value of run_revert_to_snapshot_tests."),
Valeriy Ponomaryov3c188932017-03-15 19:06:23 +0300119 cfg.StrOpt("capability_sg_consistent_snapshot_support",
120 choices=["host", "pool", None],
121 help="Backend capability to create consistent snapshots of "
122 "share group members. Will be used with creation "
123 "of new share group types as group spec."),
Marc Koderer0abc93b2015-07-15 09:18:35 +0200124 cfg.StrOpt("share_network_id",
125 default="",
126 help="Some backend drivers requires share network "
127 "for share creation. Share network id, that will be "
Goutham Pacha Ravi90c354b2019-06-12 13:18:51 -0700128 "used for shares. If not set, it won't be used. Setting "
129 "this option to a valid share network ID will mean that "
130 "the value of create_networks_when_multitenancy_enabled "
131 "should be False."),
Marc Koderer0abc93b2015-07-15 09:18:35 +0200132 cfg.StrOpt("alt_share_network_id",
133 default="",
134 help="Share network id, that will be used for shares"
Goutham Pacha Ravi90c354b2019-06-12 13:18:51 -0700135 " in alt tenant. If not set, it won't be used. Setting "
136 "this option to a valid share network ID will mean that "
137 "the value of create_networks_when_multitenancy_enabled "
138 "should be False."),
Marc Koderer0abc93b2015-07-15 09:18:35 +0200139 cfg.StrOpt("admin_share_network_id",
140 default="",
141 help="Share network id, that will be used for shares"
Goutham Pacha Ravi90c354b2019-06-12 13:18:51 -0700142 " in admin tenant. If not set, it won't be used. Setting "
143 "this option to a valid share network ID will mean that "
144 "the value of create_networks_when_multitenancy_enabled "
145 "should be False."),
Marc Koderer0abc93b2015-07-15 09:18:35 +0200146 cfg.BoolOpt("multi_backend",
147 default=False,
148 help="Runs Manila multi-backend tests."),
149 cfg.ListOpt("backend_names",
150 default=[],
151 help="Names of share backends, that will be used with "
152 "multibackend tests. Tempest will use first two values."),
153 cfg.IntOpt("share_creation_retry_number",
154 default=0,
155 help="Defines number of retries for share creation. "
156 "It is useful to avoid failures caused by unstable "
157 "environment."),
158 cfg.IntOpt("build_interval",
159 default=3,
160 help="Time in seconds between share availability checks."),
161 cfg.IntOpt("build_timeout",
162 default=500,
163 help="Timeout in seconds to wait for a share to become"
164 "available."),
165 cfg.BoolOpt("suppress_errors_in_cleanup",
166 default=False,
167 help="Whether to suppress errors with clean up operation "
168 "or not. There are cases when we may want to skip "
169 "such errors and catch only test errors."),
Valeriy Ponomaryovad55dc52015-09-23 13:54:00 +0300170
171 # Switching ON/OFF test suites filtered by features
Valeriy Ponomaryov9e56c992016-02-17 21:19:39 +0200172 cfg.BoolOpt("run_quota_tests",
173 default=True,
174 help="Defines whether to run quota tests or not."),
Marc Koderer0abc93b2015-07-15 09:18:35 +0200175 cfg.BoolOpt("run_extend_tests",
176 default=True,
177 help="Defines whether to run share extend tests or not. "
178 "Disable this feature if used driver doesn't "
179 "support it."),
180 cfg.BoolOpt("run_shrink_tests",
181 default=True,
182 help="Defines whether to run share shrink tests or not. "
183 "Disable this feature if used driver doesn't "
184 "support it."),
185 cfg.BoolOpt("run_snapshot_tests",
186 default=True,
187 help="Defines whether to run tests that use share snapshots "
188 "or not. Disable this feature if used driver doesn't "
189 "support it."),
Clinton Knight7f16b8c2016-06-08 13:46:51 -0700190 cfg.BoolOpt("run_revert_to_snapshot_tests",
191 default=False,
192 help="Defines whether to run tests that revert shares "
193 "to snapshots or not. Enable this feature if used "
194 "driver supports it."),
Andrew Kerrb8436922016-06-01 15:32:43 -0400195 cfg.BoolOpt("run_share_group_tests",
196 default=True,
197 deprecated_name="run_consistency_group_tests",
198 help="Defines whether to run share group tests or not."),
Yogeshbdb88102015-09-29 23:41:02 -0400199 cfg.BoolOpt("run_replication_tests",
200 default=False,
201 help="Defines whether to run replication tests or not. "
202 "Enable this feature if the driver is configured "
203 "for replication."),
zhaohua46366492016-06-20 17:51:47 +0800204 cfg.BoolOpt("run_multiple_share_replicas_tests",
205 default=True,
206 help="Defines whether to run multiple replicas creation test "
207 "or not. Enable this if the driver can create more than "
208 "one replica for a share."),
Rodrigo Barbieri427bc052016-06-06 17:10:06 -0300209 cfg.BoolOpt("run_host_assisted_migration_tests",
210 deprecated_name="run_migration_tests",
Rodrigo Barbieri2aafa262015-09-09 15:52:16 -0300211 default=False,
Rodrigo Barbieri427bc052016-06-06 17:10:06 -0300212 help="Enable or disable host-assisted migration tests."),
213 cfg.BoolOpt("run_driver_assisted_migration_tests",
214 deprecated_name="run_migration_tests",
215 default=False,
216 help="Enable or disable driver-assisted migration tests."),
yogeshf5bc6532016-10-25 14:57:11 -0400217 cfg.BoolOpt("run_migration_with_preserve_snapshots_tests",
218 default=False,
219 help="Enable or disable migration with "
220 "preserve_snapshots tests set to True."),
Xing Yang69b00b52015-11-22 16:10:44 -0500221 cfg.BoolOpt("run_manage_unmanage_tests",
222 default=False,
223 help="Defines whether to run manage/unmanage tests or not. "
224 "These test may leave orphaned resources, so be careful "
225 "enabling this opt."),
226 cfg.BoolOpt("run_manage_unmanage_snapshot_tests",
227 default=False,
228 help="Defines whether to run manage/unmanage snapshot tests "
229 "or not. These tests may leave orphaned resources, so be "
230 "careful enabling this opt."),
tpsilva6c776542016-07-08 14:41:35 -0300231 cfg.BoolOpt("run_mount_snapshot_tests",
232 default=False,
233 help="Enable or disable mountable snapshot tests."),
Valeriy Ponomaryovad55dc52015-09-23 13:54:00 +0300234
Marc Koderer0abc93b2015-07-15 09:18:35 +0200235 cfg.StrOpt("image_with_share_tools",
Alexey Ovchinnikovb535a5b2016-09-22 10:20:58 +0300236 default="manila-service-image-master",
Marc Koderer0abc93b2015-07-15 09:18:35 +0200237 help="Image name for vm booting with nfs/smb clients tool."),
238 cfg.StrOpt("image_username",
239 default="manila",
240 help="Image username."),
241 cfg.StrOpt("image_password",
242 help="Image password. Should be used for "
243 "'image_with_share_tools' without Nova Metadata support."),
244 cfg.StrOpt("client_vm_flavor_ref",
245 default="100",
246 help="Flavor used for client vm in scenario tests."),
Rodrigo Barbierib7137ad2015-09-06 22:53:16 -0300247 cfg.IntOpt("migration_timeout",
Rodrigo Barbierie3305122016-02-03 14:32:24 -0200248 default=1500,
Rodrigo Barbierib7137ad2015-09-06 22:53:16 -0300249 help="Time to wait for share migration before "
250 "timing out (seconds)."),
Julia Varlamovad10a4a92015-08-31 06:28:28 -0400251 cfg.StrOpt("default_share_type_name",
Julia Varlamovad10a4a92015-08-31 06:28:28 -0400252 help="Default share type name to use in tempest tests."),
Yogeshbdb88102015-09-29 23:41:02 -0400253 cfg.StrOpt("backend_replication_type",
254 default='none',
255 choices=['none', 'writable', 'readable', 'dr'],
256 help="Specify the replication type supported by the backend."),
marcusvrne0d7cfd2016-06-24 12:27:55 -0300257 cfg.IntOpt("share_size",
258 default=1,
259 help="Default size in GB for shares created by share tests."),
Rodrigo Barbieri797257e2017-11-21 11:00:45 -0200260 cfg.BoolOpt("run_ipv6_tests",
261 default=False,
262 help="Enable or disable running IPv6 tests."),
263
Marc Koderer0abc93b2015-07-15 09:18:35 +0200264]