blob: baf83803ebac7df421a6ff8ae155d7b55b6aff5b [file] [log] [blame]
Steve Baker450aa7f2014-08-25 10:37:27 +12001# Licensed under the Apache License, Version 2.0 (the "License"); you may
2# not use this file except in compliance with the License. You may obtain
3# a copy of the License at
4#
5# http://www.apache.org/licenses/LICENSE-2.0
6#
7# Unless required by applicable law or agreed to in writing, software
8# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
9# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
10# License for the specific language governing permissions and limitations
11# under the License.
12
Jens Rosenboom4f069fb2015-02-18 14:19:07 +010013from oslo_config import cfg
Steve Baker450aa7f2014-08-25 10:37:27 +120014
Steve Bakerae90e132016-08-13 09:53:07 +120015CONF = None
Steve Baker21904b52016-08-01 00:36:02 +000016
Steve Baker39ed19e2016-08-01 00:55:34 +000017service_available_group = cfg.OptGroup(name="service_available",
18 title="Available OpenStack Services")
19
20ServiceAvailableGroup = [
21 cfg.BoolOpt("heat_plugin",
22 default=True,
23 help="Whether or not heat is expected to be available"),
24]
Steve Baker450aa7f2014-08-25 10:37:27 +120025
Steve Bakerdc769c32016-07-27 23:31:50 +000026heat_group = cfg.OptGroup(name="heat_plugin",
27 title="Heat Service Options")
Steve Baker450aa7f2014-08-25 10:37:27 +120028
Steve Bakerdc769c32016-07-27 23:31:50 +000029HeatGroup = [
30 cfg.StrOpt("catalog_type",
31 default="orchestration",
32 help="Catalog type of the orchestration service."),
Steve Baker450aa7f2014-08-25 10:37:27 +120033 cfg.StrOpt('username',
Rakesh H Sa286a132016-02-18 18:54:00 +053034 help="Username to use for non admin API requests."),
Steve Baker450aa7f2014-08-25 10:37:27 +120035 cfg.StrOpt('password',
Rakesh H Sa286a132016-02-18 18:54:00 +053036 help="Non admin API key to use when authenticating.",
37 secret=True),
38 cfg.StrOpt('admin_username',
39 help="Username to use for admin API requests."),
40 cfg.StrOpt('admin_password',
41 help="Admin API key to use when authentication.",
Steve Baker450aa7f2014-08-25 10:37:27 +120042 secret=True),
rabibe38c302017-04-11 09:54:07 +053043 cfg.StrOpt('project_name',
44 help="Project name to use for API requests.",
45 deprecated_opts=[cfg.DeprecatedOpt('tenant_name',
46 group='heat_plugin')]),
47 cfg.StrOpt('admin_project_name',
rabifd98a472016-05-24 10:18:33 +053048 default='admin',
rabibe38c302017-04-11 09:54:07 +053049 help="Admin project name to use for admin API requests.",
50 deprecated_opts=[cfg.DeprecatedOpt('admin_tenant_name',
51 group='heat_plugin')]),
Steve Baker450aa7f2014-08-25 10:37:27 +120052 cfg.StrOpt('auth_url',
Rabi Mishra65493fb2016-01-29 22:23:21 +053053 help="Full URI of the OpenStack Identity API (Keystone)"),
Rabi Mishra1d538742016-03-21 21:09:20 +053054 cfg.StrOpt('user_domain_name',
Zane Bitter5ea4aa42017-03-01 15:50:19 -050055 help="User domain name, if keystone v3 auth_url "
Rabi Mishra1d538742016-03-21 21:09:20 +053056 "is used"),
57 cfg.StrOpt('project_domain_name',
Zane Bitter5ea4aa42017-03-01 15:50:19 -050058 help="Project domain name, if keystone v3 auth_url "
Rabi Mishra65493fb2016-01-29 22:23:21 +053059 "is used"),
rabi133ee5f2016-12-01 09:54:37 +053060 cfg.StrOpt('user_domain_id',
Zane Bitter5ea4aa42017-03-01 15:50:19 -050061 help="User domain id, if keystone v3 auth_url "
rabi133ee5f2016-12-01 09:54:37 +053062 "is used"),
63 cfg.StrOpt('project_domain_id',
Zane Bitter5ea4aa42017-03-01 15:50:19 -050064 help="Project domain id, if keystone v3 auth_url "
rabi133ee5f2016-12-01 09:54:37 +053065 "is used"),
Steve Baker450aa7f2014-08-25 10:37:27 +120066 cfg.StrOpt('region',
Rabi Mishra65493fb2016-01-29 22:23:21 +053067 help="The region name to use"),
Steve Baker450aa7f2014-08-25 10:37:27 +120068 cfg.StrOpt('instance_type',
Steve Baker450aa7f2014-08-25 10:37:27 +120069 help="Instance type for tests. Needs to be big enough for a "
70 "full OS plus the test workload"),
Pavlo Shchelokovskyy46e5cb22015-03-23 12:01:25 +000071 cfg.StrOpt('minimal_instance_type',
72 help="Instance type enough for simplest cases."),
Steve Baker450aa7f2014-08-25 10:37:27 +120073 cfg.StrOpt('image_ref',
Steve Baker450aa7f2014-08-25 10:37:27 +120074 help="Name of image to use for tests which boot servers."),
75 cfg.StrOpt('keypair_name',
Steve Baker450aa7f2014-08-25 10:37:27 +120076 help="Name of existing keypair to launch servers with."),
77 cfg.StrOpt('minimal_image_ref',
Steve Baker450aa7f2014-08-25 10:37:27 +120078 help="Name of minimal (e.g cirros) image to use when "
79 "launching test instances."),
Steve Baker450aa7f2014-08-25 10:37:27 +120080 cfg.BoolOpt('disable_ssl_certificate_validation',
81 default=False,
82 help="Set to True if using self-signed SSL certificates."),
tyagi39aa11a2016-03-07 04:47:00 -080083 cfg.StrOpt('ca_file',
tyagi39aa11a2016-03-07 04:47:00 -080084 help="CA certificate to pass for servers that have "
85 "https endpoint."),
Steve Baker450aa7f2014-08-25 10:37:27 +120086 cfg.IntOpt('build_interval',
87 default=4,
88 help="Time in seconds between build status checks."),
89 cfg.IntOpt('build_timeout',
90 default=1200,
91 help="Timeout in seconds to wait for a stack to build."),
92 cfg.StrOpt('network_for_ssh',
Rabi Mishraec4b03b2015-05-23 02:20:47 +053093 default='heat-net',
Steve Baker450aa7f2014-08-25 10:37:27 +120094 help="Network used for SSH connections."),
95 cfg.StrOpt('fixed_network_name',
Rabi Mishraec4b03b2015-05-23 02:20:47 +053096 default='heat-net',
Steve Baker450aa7f2014-08-25 10:37:27 +120097 help="Visible fixed network name "),
Pavlo Shchelokovskyy6fa23802015-03-23 11:22:35 +000098 cfg.StrOpt('floating_network_name',
99 default='public',
100 help="Visible floating network name "),
Steve Baker0b679bb2015-03-11 13:46:42 +1300101 cfg.StrOpt('boot_config_env',
Steve Baker803f1502015-03-11 13:47:08 +1300102 default=('heat_integrationtests/scenario/templates'
103 '/boot_config_none_env.yaml'),
Steve Baker0b679bb2015-03-11 13:46:42 +1300104 help="Path to environment file which defines the "
105 "resource type Heat::InstallConfigAgent. Needs to "
106 "be appropriate for the image_ref."),
kairat_kushaev0ab3d7c2015-01-27 21:48:46 +0300107 cfg.StrOpt('fixed_subnet_name',
Rabi Mishraec4b03b2015-05-23 02:20:47 +0530108 default='heat-subnet',
kairat_kushaev0ab3d7c2015-01-27 21:48:46 +0300109 help="Visible fixed sub-network name "),
Steve Baker450aa7f2014-08-25 10:37:27 +1200110 cfg.IntOpt('ssh_timeout',
111 default=300,
112 help="Timeout in seconds to wait for authentication to "
113 "succeed."),
114 cfg.IntOpt('ip_version_for_ssh',
115 default=4,
116 help="IP version used for SSH connections."),
117 cfg.IntOpt('ssh_channel_timeout',
118 default=60,
119 help="Timeout in seconds to wait for output from ssh "
120 "channel."),
121 cfg.IntOpt('tenant_network_mask_bits',
122 default=28,
123 help="The mask bits for tenant ipv4 subnets"),
Rabi Mishra477efc92015-07-31 13:01:45 +0530124 cfg.BoolOpt('skip_scenario_tests',
125 default=False,
126 help="Skip all scenario tests"),
127 cfg.BoolOpt('skip_functional_tests',
128 default=False,
129 help="Skip all functional tests"),
130 cfg.ListOpt('skip_functional_test_list',
Rabi Mishra94c43722015-08-12 18:39:38 +0530131 help="List of functional test class or class.method "
Zane Bitter5ea4aa42017-03-01 15:50:19 -0500132 "names to skip ex. AutoscalingGroupTest, "
Rabi Mishra94c43722015-08-12 18:39:38 +0530133 "InstanceGroupBasicTest.test_size_updates_work"),
Rabi Mishra477efc92015-07-31 13:01:45 +0530134 cfg.ListOpt('skip_scenario_test_list',
Rabi Mishra94c43722015-08-12 18:39:38 +0530135 help="List of scenario test class or class.method "
136 "names to skip ex. NeutronLoadBalancerTest, "
huangtianhua422c1ba2016-06-08 15:50:39 +0800137 "AodhAlarmTest.test_alarm"),
Rabi Mishra477efc92015-07-31 13:01:45 +0530138 cfg.ListOpt('skip_test_stack_action_list',
139 help="List of stack actions in tests to skip "
140 "ex. ABANDON, ADOPT, SUSPEND, RESUME"),
Steve Baker450aa7f2014-08-25 10:37:27 +1200141 cfg.IntOpt('volume_size',
142 default=1,
143 help='Default size in GB for volumes created by volumes tests'),
Anastasia Kuznetsova3e0ab4d2015-03-06 18:10:13 +0400144 cfg.IntOpt('connectivity_timeout',
145 default=120,
146 help="Timeout in seconds to wait for connectivity to "
147 "server."),
Oleksii Chuprykov4be023a2015-07-08 07:17:08 -0400148 cfg.IntOpt('sighup_timeout',
rabicfffc832016-07-28 12:15:32 +0530149 default=120,
Zane Bitter5ea4aa42017-03-01 15:50:19 -0500150 help="Timeout in seconds to wait for adding or removing child "
Thomas Herve2ce4bda2016-01-22 17:55:55 +0100151 "process after receiving of sighup signal"),
Peter Razumovsky483e64b2016-03-04 17:04:28 +0300152 cfg.IntOpt('sighup_config_edit_retries',
153 default=10,
154 help='Count of retries to edit config file during sighup. If '
155 'another worker already edit config file, file can be '
156 'busy, so need to wait and try edit file again.'),
huangtianhua2026ac12017-01-10 14:18:43 +0800157 cfg.StrOpt('heat_config_notify_script',
Thomas Herve2ce4bda2016-01-22 17:55:55 +0100158 default=('heat-config-notify'),
159 help="Path to the script heat-config-notify"),
Rabi Mishra65493fb2016-01-29 22:23:21 +0530160
Steve Baker450aa7f2014-08-25 10:37:27 +1200161]
162
163
Thomas Hervecd3622e2014-12-17 10:36:51 +0100164def list_opts():
Steve Bakerdc769c32016-07-27 23:31:50 +0000165 yield heat_group.name, HeatGroup
Steve Baker39ed19e2016-08-01 00:55:34 +0000166 yield service_available_group.name, ServiceAvailableGroup