blob: 8ff90aac3b3078b8680369aae700a0b1d90945dc [file] [log] [blame]
Ryota MIBUcb334142015-12-10 15:41:39 +09001# Copyright 2012 OpenStack Foundation
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 oslo_config import cfg
Takashi Kajinami0beea182024-01-31 19:42:42 +090017from oslo_config import types
Ryota MIBUcb334142015-12-10 15:41:39 +090018
19
Chandan Kumar696751e2017-12-04 16:04:15 +053020service_option = [cfg.BoolOpt('ceilometer',
21 default=True,
22 help="Whether or not Ceilometer is expected to"
23 "be available"),
ghanshyam8bccc062018-01-23 12:35:06 +030024 cfg.BoolOpt("aodh",
Chandan Kumar6f97ca02017-12-07 12:50:34 +053025 default=True,
26 help="Whether or not Aodh is expected to be"
ghanshyam8bccc062018-01-23 12:35:06 +030027 "available",
28 deprecated_opts=[cfg.DeprecatedOpt(
29 'aodh_plugin',
30 group='service_available')]),
Chandan Kumard9a10fe2018-01-11 14:34:45 +053031 cfg.BoolOpt('gnocchi',
32 default=True,
33 help="Whether or not Gnocchi is expected to be"
Erno Kuvajab0e09122023-11-30 13:09:46 +000034 "available",
35 deprecated_for_removal=True),
Jaromir Wysoglad3dd1d0d2023-11-22 05:17:28 -050036 cfg.BoolOpt('sg_core',
Takashi Kajinami76400662023-11-29 19:41:19 +090037 default=False,
Jaromir Wysoglad3dd1d0d2023-11-22 05:17:28 -050038 help="Whether or not sg-core is expected to be"
Erno Kuvajab0e09122023-11-30 13:09:46 +000039 "available",
40 deprecated_for_removal=True)]
Ryota MIBUcb334142015-12-10 15:41:39 +090041
ghanshyam905e0812016-04-14 11:45:56 +090042telemetry_group = cfg.OptGroup(name='telemetry',
Ryota MIBUcb334142015-12-10 15:41:39 +090043 title='Telemetry Service Options')
44
Erno Kuvajab0e09122023-11-30 13:09:46 +000045telemetry_services_group = cfg.OptGroup(name='telemetry_services',
46 title='Telemetry Services')
47
Chandan Kumar696751e2017-12-04 16:04:15 +053048event_group = cfg.OptGroup(name='event',
49 title='Event Service Options')
50
Chandan Kumar6f97ca02017-12-07 12:50:34 +053051alarming_group = cfg.OptGroup(name='alarming_plugin',
52 title='Alarming Service Options')
53
Chandan Kumard9a10fe2018-01-11 14:34:45 +053054metric_group = cfg.OptGroup(name='metric',
55 title='Metric Service Options')
56
Ryota MIBUcb334142015-12-10 15:41:39 +090057TelemetryGroup = [
Hanxi Liu17b4d5b2017-02-07 01:31:49 +080058 cfg.IntOpt('notification_wait',
59 default=120,
60 help="The seconds to wait for notifications which "
61 "containers and objects sent to swift."),
62 cfg.IntOpt('notification_sleep',
63 default=1,
64 help="The seconds to sleep after an unsuccessful "
65 "notification received."),
Mehdi Abaakouk717324c2017-04-25 14:31:00 +020066 cfg.IntOpt('alarm_granularity',
67 default=300,
68 help="Granularity to use for aodh alarms. This must match the "
Julien Danjou3b79e462018-07-19 09:31:40 +020069 "configured Gnocchi archive policy"),
70 cfg.StrOpt('alarm_metric_name',
Mehdi Abaakoukb98eb812018-09-20 15:47:09 +020071 default="cpu",
Julien Danjou3b79e462018-07-19 09:31:40 +020072 help="Name of the metric to create an alarm on."),
73 cfg.StrOpt('alarm_aggregation_method',
Mehdi Abaakoukb98eb812018-09-20 15:47:09 +020074 default="rate:mean",
Julien Danjou3b79e462018-07-19 09:31:40 +020075 help="Aggregation method to use for alarm."),
76 cfg.IntOpt('alarm_threshold',
77 default=10,
78 help="Threshold to cross for the alarm to trigger."),
mgirgisfd00901d2024-03-13 10:31:56 +010079 cfg.IntOpt('scaledown_alarm_threshold',
80 default=2000000000,
81 help="Threshold to cross for the alarm to trigger."),
Pavlo Shchelokovskyy959fc692020-10-05 12:05:15 +030082 cfg.BoolOpt("disable_ssl_certificate_validation",
83 default=False,
84 help="Disable SSL certificate validation when running "
85 "scenario tests"),
Jaromír Wysogladd6c49722023-10-13 09:08:38 +020086 cfg.StrOpt('sg_core_service_url',
87 default="127.0.0.1:3000",
88 help="URL to sg-core prometheus endpoint"),
mgirgisfd00901d2024-03-13 10:31:56 +010089 cfg.StrOpt('prometheus_service_url',
90 default="127.0.0.1:9090",
91 help="URL to prometheus endpoint"),
Jaromir Wysogladb8fd0672024-02-19 10:26:11 -050092 cfg.IntOpt('ceilometer_polling_interval',
93 default=300,
94 help="Polling interval configured for ceilometer. This can "
95 "be used in test cases to wait for metrics to appear.")
Ryota MIBUcb334142015-12-10 15:41:39 +090096]
Chandan Kumar696751e2017-12-04 16:04:15 +053097
Erno Kuvajab0e09122023-11-30 13:09:46 +000098telemetry_services_opts = [
Takashi Kajinami0beea182024-01-31 19:42:42 +090099 cfg.ListOpt('metric_backends',
100 default=[],
101 item_type=types.String(choices=['gnocchi', 'prometheus']),
102 help="Backend store used to store metrics"),
103 cfg.StrOpt('alarm_backend',
104 default='mysql',
Takashi Kajinami08f36e02024-02-07 18:00:43 +0900105 choices=['mysql', 'postgresql'],
Takashi Kajinami0beea182024-01-31 19:42:42 +0900106 help="Database used by the aodh service"),
Erno Kuvajab0e09122023-11-30 13:09:46 +0000107]
108
Chandan Kumar696751e2017-12-04 16:04:15 +0530109event_opts = [
110 cfg.StrOpt('catalog_type',
111 default='event',
112 help="Catalog type of the Event service."),
113 cfg.StrOpt('endpoint_type',
114 default='publicURL',
115 choices=['public', 'admin', 'internal',
116 'publicURL', 'adminURL', 'internalURL'],
117 help="The endpoint type to use for the event service."),
118]
Chandan Kumar6f97ca02017-12-07 12:50:34 +0530119
120AlarmingGroup = [
121 cfg.StrOpt('catalog_type',
122 default='alarming',
123 help="Catalog type of the Alarming service."),
124 cfg.StrOpt('endpoint_type',
125 default='publicURL',
126 choices=['public', 'admin', 'internal',
127 'publicURL', 'adminURL', 'internalURL'],
128 help="The endpoint type to use for the alarming service."),
Lingxian Kong6a7d7982019-08-21 15:51:09 +1200129 cfg.BoolOpt('create_alarms',
130 default=True,
131 help="If create alarms dynamically before testing."),
Chandan Kumar6f97ca02017-12-07 12:50:34 +0530132]
Chandan Kumard9a10fe2018-01-11 14:34:45 +0530133
134metric_opts = [
135 cfg.StrOpt('catalog_type',
136 default='metric',
137 help="Catalog type of the Metric service."),
138 cfg.StrOpt('endpoint_type',
139 default='publicURL',
140 choices=['public', 'admin', 'internal',
141 'publicURL', 'adminURL', 'internalURL'],
142 help="The endpoint type to use for the metric service."),
143]