blob: 360ab8d7a10ee237d29b1095cdf6c9cc10b735ac [file] [log] [blame]
Ed Tanousc5bcf352024-09-25 16:41:10 -07001# BMCWEB_KVM
Ed Tanous0cd5f782022-04-26 16:09:09 -07002option(
Ed Tanous0cd5f782022-04-26 16:09:09 -07003 'kvm',
4 type: 'feature',
5 value: 'enabled',
6 description: '''Enable the KVM host video WebSocket. Path is /kvm/0.
Ed Tanous50b37022024-06-25 13:00:04 -07007 Video is from the BMCs /dev/videodevice.''',
Ed Tanous0cd5f782022-04-26 16:09:09 -07008)
9
Ed Tanousc5bcf352024-09-25 16:41:10 -070010# BMCWEB_TESTS
Ed Tanous0cd5f782022-04-26 16:09:09 -070011option(
12 'tests',
13 type: 'feature',
14 value: 'enabled',
Ed Tanous50b37022024-06-25 13:00:04 -070015 description: 'Enable Unit tests for bmcweb',
Ed Tanous0cd5f782022-04-26 16:09:09 -070016)
17
Ed Tanousc5bcf352024-09-25 16:41:10 -070018# BMCWEB_VM_WEBSOCKET
Ed Tanous0cd5f782022-04-26 16:09:09 -070019option(
20 'vm-websocket',
21 type: 'feature',
22 value: 'enabled',
Ed Tanous36c0f2a2024-02-09 13:50:26 -080023 description: '''Enable the Virtual Media WebSocket. Path is /vm/0/0 and /nbd/<id> to
Ed Tanous0cd5f782022-04-26 16:09:09 -070024 open the websocket. See
Ed Tanous50b37022024-06-25 13:00:04 -070025 https://github.com/openbmc/jsnbd/blob/master/README.''',
Ed Tanous0cd5f782022-04-26 16:09:09 -070026)
Ed Tanousefb80622021-02-20 11:04:01 -080027
Ed Tanousc5bcf352024-09-25 16:41:10 -070028# BMCWEB_NBDPROXY
Ed Tanousefb80622021-02-20 11:04:01 -080029# if you use this option and are seeing this comment, please comment here:
30# https://github.com/openbmc/bmcweb/issues/188 and put forward your intentions
31# for this code. At this point, no daemon has been upstreamed that implements
32# this interface, so for the moment this appears to be dead code; In leiu of
33# removing it, it has been disabled to try to give those that use it the
34# opportunity to upstream their backend implementation
Ed Tanous0cd5f782022-04-26 16:09:09 -070035#option(
36# 'vm-nbdproxy',
Ed Tanous36c0f2a2024-02-09 13:50:26 -080037# type: 'feature',
38# value: 'disabled',
Ed Tanous0cd5f782022-04-26 16:09:09 -070039# description: 'Enable the Virtual Media WebSocket.'
40#)
41
Ed Tanousc5bcf352024-09-25 16:41:10 -070042# BMCWEB_REST
Ed Tanous0cd5f782022-04-26 16:09:09 -070043option(
44 'rest',
45 type: 'feature',
46 value: 'disabled',
47 description: '''Enable Phosphor REST (D-Bus) APIs. Paths directly map
48 Phosphor D-Bus object paths, for example,
49 /xyz/openbmc_project/logging/entry/enumerate. See
Ed Tanous50b37022024-06-25 13:00:04 -070050 https://github.com/openbmc/docs/blob/master/rest-api.md.''',
Ed Tanous0cd5f782022-04-26 16:09:09 -070051)
52
Ed Tanousc5bcf352024-09-25 16:41:10 -070053# BMCWEB_REDFISH
Ed Tanous0cd5f782022-04-26 16:09:09 -070054option(
55 'redfish',
56 type: 'feature',
57 value: 'enabled',
58 description: '''Enable Redfish APIs. Paths are under /redfish/v1/. See
Ed Tanous50b37022024-06-25 13:00:04 -070059 https://github.com/openbmc/bmcweb/blob/master/DEVELOPING.md#redfish.''',
Ed Tanous0cd5f782022-04-26 16:09:09 -070060)
61
Ed Tanousc5bcf352024-09-25 16:41:10 -070062# BMCWEB_HOST_SERIAL_SOCKET
Ed Tanous0cd5f782022-04-26 16:09:09 -070063option(
64 'host-serial-socket',
65 type: 'feature',
66 value: 'enabled',
67 description: '''Enable host serial console WebSocket. Path is /console0.
Ed Tanous50b37022024-06-25 13:00:04 -070068 See https://github.com/openbmc/docs/blob/master/console.md.''',
Ed Tanous0cd5f782022-04-26 16:09:09 -070069)
70
Ed Tanousc5bcf352024-09-25 16:41:10 -070071# BMCWEB_STATIC_HOSTING
Ed Tanous0cd5f782022-04-26 16:09:09 -070072option(
73 'static-hosting',
74 type: 'feature',
75 value: 'enabled',
76 description: '''Enable serving files from the /usr/share/www directory
Ed Tanous50b37022024-06-25 13:00:04 -070077 as paths under /.''',
Ed Tanous0cd5f782022-04-26 16:09:09 -070078)
79
Ed Tanousc5bcf352024-09-25 16:41:10 -070080# BMCWEB_REDFISH_BMC_JOURNAL
Ed Tanous0cd5f782022-04-26 16:09:09 -070081option(
82 'redfish-bmc-journal',
83 type: 'feature',
Willy Tuf8483672022-05-10 15:08:10 -070084 value: 'enabled',
Ed Tanous0cd5f782022-04-26 16:09:09 -070085 description: '''Enable BMC journal access through Redfish. Paths are under
Ed Tanous50b37022024-06-25 13:00:04 -070086 /redfish/v1/Managers/bmc/LogServices/Journal.''',
Ed Tanous0cd5f782022-04-26 16:09:09 -070087)
88
Ed Tanousc5bcf352024-09-25 16:41:10 -070089# BMCWEB_REDFISH_CPU_LOG
Ed Tanous0cd5f782022-04-26 16:09:09 -070090option(
91 'redfish-cpu-log',
92 type: 'feature',
93 value: 'disabled',
94 description: '''Enable CPU log service transactions through Redfish. Paths
Ed Tanous50b37022024-06-25 13:00:04 -070095 are under /redfish/v1/Systems/system/LogServices/Crashdump'.''',
Ed Tanous0cd5f782022-04-26 16:09:09 -070096)
97
Ed Tanousc5bcf352024-09-25 16:41:10 -070098# BMCWEB_REDFISH_DUMP_LOG
Ed Tanous0cd5f782022-04-26 16:09:09 -070099option(
100 'redfish-dump-log',
101 type: 'feature',
102 value: 'disabled',
103 description: '''Enable Dump log service transactions through Redfish. Paths
104 are under /redfish/v1/Systems/system/LogServices/Dump
Ed Tanous50b37022024-06-25 13:00:04 -0700105 and /redfish/v1/Managers/bmc/LogServices/Dump''',
Ed Tanous0cd5f782022-04-26 16:09:09 -0700106)
107
Ed Tanousc5bcf352024-09-25 16:41:10 -0700108# BMCWEB_REDFISH_DBUS_LOG
Ed Tanous0cd5f782022-04-26 16:09:09 -0700109option(
110 'redfish-dbus-log',
111 type: 'feature',
112 value: 'disabled',
113 description: '''Enable DBUS log service transactions through Redfish. Paths
114 are under
Ed Tanous50b37022024-06-25 13:00:04 -0700115 /redfish/v1/Systems/system/LogServices/EventLog/Entries''',
Ed Tanous0cd5f782022-04-26 16:09:09 -0700116)
117
Alexander Hansen6c58a032024-11-21 15:27:04 -0800118# BMCWEB_EXPERIMENTAL_REDFISH_DBUS_LOG_SUBSCRIPTION
119option(
120 'experimental-redfish-dbus-log-subscription',
121 type: 'feature',
122 value: 'disabled',
123 description: '''
124 Allows EventService subscriptions when the redfish-dbus-log option is
125 enabled.
126 This option is currently non-functional, given Redfish requirements for
127 MessageId support in Events.
128 Option will be removed begining of Q2-2025.
129 Should not be enabled on any production systems.
130 ''',
131)
132
Ed Tanousc5bcf352024-09-25 16:41:10 -0700133# BMCWEB_REDFISH_HOST_LOGGER
Ed Tanous0cd5f782022-04-26 16:09:09 -0700134option(
135 'redfish-host-logger',
136 type: 'feature',
137 value: 'enabled',
138 description: '''Enable host log service transactions based on
139 phosphor-hostlogger through Redfish. Paths are under
Ed Tanous50b37022024-06-25 13:00:04 -0700140 /redfish/v1/Systems/system/LogServices/HostLogger''',
Ed Tanous0cd5f782022-04-26 16:09:09 -0700141)
142
Ed Tanousc5bcf352024-09-25 16:41:10 -0700143# BMCWEB_REDFISH_PROVISIONING_FEATURE
Ed Tanous0cd5f782022-04-26 16:09:09 -0700144option(
145 'redfish-provisioning-feature',
146 type: 'feature',
147 value: 'disabled',
148 description: '''Enable provisioning feature support in redfish. Paths are
Ed Tanous50b37022024-06-25 13:00:04 -0700149 under /redfish/v1/Systems/system/''',
Ed Tanous0cd5f782022-04-26 16:09:09 -0700150)
151
Ed Tanousc5bcf352024-09-25 16:41:10 -0700152# BMCWEB_REDFISH_MANAGER_URI_NAME
Ed Tanous0cd5f782022-04-26 16:09:09 -0700153option(
Ed Tanous253f11b2024-05-16 09:38:31 -0700154 'redfish-manager-uri-name',
155 type: 'string',
156 value: 'bmc',
157 description: '''The static Redfish Manager ID representing the BMC
158 instance. This option will appear in the Redfish tree at
159 /redfish/v1/Managers/<redfish-manager-uri-name>.
160 Defaults to \'bmc\' which resolves to
Ed Tanous50b37022024-06-25 13:00:04 -0700161 /redfish/v1/Managers/bmc''',
Ed Tanous253f11b2024-05-16 09:38:31 -0700162)
163
Ed Tanousc5bcf352024-09-25 16:41:10 -0700164# BMCWEB_REDFISH_SYSTEM_URI_NAME
Ed Tanous253f11b2024-05-16 09:38:31 -0700165option(
166 'redfish-system-uri-name',
167 type: 'string',
168 value: 'system',
169 description: '''The static Redfish System ID representing the host
170 instance. This option will appear in the Redfish tree at
171 /redfish/v1/Systems/<redfish-system-uri-name>.
172 Defaults to \'system\' which resolves to
Ed Tanous50b37022024-06-25 13:00:04 -0700173 /redfish/v1/Systems/system''',
Ed Tanous253f11b2024-05-16 09:38:31 -0700174)
175
Ed Tanousc5bcf352024-09-25 16:41:10 -0700176# BMCWEB_LOGGING_LEVEL
Ed Tanous253f11b2024-05-16 09:38:31 -0700177option(
Ed Tanous0cd5f782022-04-26 16:09:09 -0700178 'bmcweb-logging',
Myung Bae662aa6e2023-01-10 14:20:28 -0600179 type: 'combo',
Ed Tanous92e26be2024-08-21 13:39:14 -0700180 choices: [
181 'disabled',
182 'enabled',
183 'debug',
184 'info',
185 'warning',
186 'error',
187 'critical',
188 ],
Ed Tanous4d1db042024-02-16 13:08:34 -0800189 value: 'error',
Myung Bae662aa6e2023-01-10 14:20:28 -0600190 description: '''Enable output the extended logging level.
191 - disabled: disable bmcweb log traces.
192 - enabled: treated as 'debug'
Ed Tanous50b37022024-06-25 13:00:04 -0700193 - For the other logging level option, see DEVELOPING.md.''',
Ed Tanous0cd5f782022-04-26 16:09:09 -0700194)
195
Ed Tanousc5bcf352024-09-25 16:41:10 -0700196# BMCWEB_BASIC_AUTH
Ed Tanous0cd5f782022-04-26 16:09:09 -0700197option(
198 'basic-auth',
199 type: 'feature',
200 value: 'enabled',
Ed Tanous50b37022024-06-25 13:00:04 -0700201 description: 'Enable basic authentication',
Ed Tanous0cd5f782022-04-26 16:09:09 -0700202)
203
Ed Tanousc5bcf352024-09-25 16:41:10 -0700204# BMCWEB_SESSION_AUTH
Ed Tanous0cd5f782022-04-26 16:09:09 -0700205option(
206 'session-auth',
207 type: 'feature',
208 value: 'enabled',
Ed Tanous50b37022024-06-25 13:00:04 -0700209 description: 'Enable session authentication',
Ed Tanous0cd5f782022-04-26 16:09:09 -0700210)
211
Ed Tanousc5bcf352024-09-25 16:41:10 -0700212# BMCWEB_XTOKEN_AUTH
Ed Tanous0cd5f782022-04-26 16:09:09 -0700213option(
214 'xtoken-auth',
215 type: 'feature',
216 value: 'enabled',
Ed Tanous50b37022024-06-25 13:00:04 -0700217 description: 'Enable xtoken authentication',
Ed Tanous0cd5f782022-04-26 16:09:09 -0700218)
219
Ed Tanousc5bcf352024-09-25 16:41:10 -0700220# BMCWEB_COOKIE_AUTH
Ed Tanous0cd5f782022-04-26 16:09:09 -0700221option(
222 'cookie-auth',
223 type: 'feature',
224 value: 'enabled',
Ed Tanous50b37022024-06-25 13:00:04 -0700225 description: 'Enable cookie authentication',
Ed Tanous0cd5f782022-04-26 16:09:09 -0700226)
227
Ed Tanousc5bcf352024-09-25 16:41:10 -0700228# BMCWEB_MUTUAL_TLS_AUTH
Ed Tanous0cd5f782022-04-26 16:09:09 -0700229option(
230 'mutual-tls-auth',
231 type: 'feature',
232 value: 'enabled',
233 description: '''Enables authenticating users through TLS client
234 certificates. The insecure-disable-ssl must be disabled for
Ed Tanous50b37022024-06-25 13:00:04 -0700235 this option to take effect.''',
Ed Tanous0cd5f782022-04-26 16:09:09 -0700236)
237
Ed Tanousc5bcf352024-09-25 16:41:10 -0700238# BMCWEB_MUTUAL_TLS_COMMON_NAME_PARSING_DEFAULT
Ed Tanous0cd5f782022-04-26 16:09:09 -0700239option(
Ed Tanous3ce36882024-06-09 10:58:16 -0700240 'mutual-tls-common-name-parsing-default',
Marco Kawajiri0e373b52023-10-31 13:36:58 -0700241 type: 'combo',
Malik Akbar Hashemi Rafsanjania4943692025-05-27 13:23:44 -0700242 choices: ['CommonName', 'Whole', 'UserPrincipalName'],
243 description: '''Default MTLS parse mode to get username from the
244 client's x509 certificate''',
Marco Kawajiri0e373b52023-10-31 13:36:58 -0700245)
246
Ed Tanousc5bcf352024-09-25 16:41:10 -0700247# BMCWEB_IBM_MANAGEMENT_CONSOLE
Ed Tanous3ce36882024-06-09 10:58:16 -0700248option(
Ed Tanous0cd5f782022-04-26 16:09:09 -0700249 'ibm-management-console',
250 type: 'feature',
251 value: 'disabled',
252 description: '''Enable the IBM management console specific functionality.
Ed Tanous50b37022024-06-25 13:00:04 -0700253 Paths are under /ibm/v1/''',
Ed Tanous0cd5f782022-04-26 16:09:09 -0700254)
255
Ed Tanousc5bcf352024-09-25 16:41:10 -0700256# BMCWEB_GOOGLE_API
Ed Tanous0cd5f782022-04-26 16:09:09 -0700257option(
258 'google-api',
259 type: 'feature',
260 value: 'disabled',
261 description: '''Enable the Google specific functionality. Paths are under
Ed Tanous50b37022024-06-25 13:00:04 -0700262 /google/v1/''',
Ed Tanous0cd5f782022-04-26 16:09:09 -0700263)
264
Ed Tanousc5bcf352024-09-25 16:41:10 -0700265# BMCWEB_HTTP_BODY_LIMIT
Ed Tanous0cd5f782022-04-26 16:09:09 -0700266option(
267 'http-body-limit',
268 type: 'integer',
269 min: 0,
270 max: 512,
271 value: 30,
Ed Tanous50b37022024-06-25 13:00:04 -0700272 description: 'Specifies the http request body length limit',
Ed Tanous0cd5f782022-04-26 16:09:09 -0700273)
274
Ed Tanousb2539062024-03-12 16:58:35 -0700275# BMCWEB_HTTP_ZSTD
276option(
277 'http-zstd',
278 type: 'feature',
279 value: 'enabled',
280 description: 'Allows compression/decompression using zstd',
281)
282
Ed Tanousc5bcf352024-09-25 16:41:10 -0700283# BMCWEB_REDFISH_NEW_POWERSUBSYSTEM_THERMALSUBSYSTEM
Ed Tanous0cd5f782022-04-26 16:09:09 -0700284option(
285 'redfish-new-powersubsystem-thermalsubsystem',
286 type: 'feature',
Gunnar Mills86159152024-02-06 14:54:39 -0600287 value: 'enabled',
Ed Tanous0cd5f782022-04-26 16:09:09 -0700288 description: '''Enable/disable the new PowerSubsystem, ThermalSubsystem,
289 and all children schemas. This includes displaying all
Ed Tanous50b37022024-06-25 13:00:04 -0700290 sensors in the SensorCollection.''',
Ed Tanous0cd5f782022-04-26 16:09:09 -0700291)
292
Janet Adkinsf664fd82025-07-23 14:01:43 -0500293# BMCWEB_REDFISH_ALLOW_DEPRECATED_INDICATORLED
294option(
295 'redfish-allow-deprecated-indicatorled',
296 type: 'feature',
297 value: 'disabled',
298 description: '''Enable/disable the deprecated IndicatorLED property. The
299 default condition is disabled. The code to enable this
300 option will be removed by March 2026.''',
301)
302
Janet Adkinseb261e12025-09-15 13:25:45 -0500303# BMCWEB_REDFISH_USE_HARDCODED_SYSTEM_LOCATION_INDICATOR
304option(
305 'redfish-use-hardcoded-system-location-indicator',
306 type: 'feature',
307 value: 'enabled',
308 description: '''Enable/disable the use of hard-coded LED group
309 enclosure_identify_blink and enclosure_identify for getting
310 and setting the LocationIndicatorActive for the Systems
311 response. The default condition will be enabled until
312 October 15, 2025. The code to enable this option will be
313 removed by June 2026.''',
314)
315
Ed Tanousc5bcf352024-09-25 16:41:10 -0700316# BMCWEB_REDFISH_ALLOW_DEPRECATED_POWER_THERMAL
Ed Tanous0cd5f782022-04-26 16:09:09 -0700317option(
318 'redfish-allow-deprecated-power-thermal',
319 type: 'feature',
Gunnar Millsdb3bf6f2025-08-21 11:05:13 -0500320 value: 'disabled',
321 description: '''Enable/disable the old Power / Thermal. This has been
322 replaced by the new PowerSubsystem, ThermalSubsystem, and
323 the redfish-new-powersubsystem-thermalsubsystem option.
324 This option will be removed June 2026.''',
Ed Tanous0cd5f782022-04-26 16:09:09 -0700325)
326
Ed Tanousc5bcf352024-09-25 16:41:10 -0700327# BMCWEB_REDFISH_OEM_MANAGER_FAN_DATA
Ed Tanous0cd5f782022-04-26 16:09:09 -0700328option(
Gunnar Mills54dce7f2022-08-05 17:01:32 +0000329 'redfish-oem-manager-fan-data',
330 type: 'feature',
331 value: 'enabled',
332 description: '''Enables Redfish OEM fan data on the manager resource.
333 This includes PID and Stepwise controller data. See
Myung Bae1d19d872024-09-10 09:42:32 -0400334 OpenBMCManager schema for more detail.''',
Gunnar Mills54dce7f2022-08-05 17:01:32 +0000335)
336
Ed Tanousc5bcf352024-09-25 16:41:10 -0700337# BMCWEB_REDFISH_UPDATESERVICE_USE_DBUS
Gunnar Mills54dce7f2022-08-05 17:01:32 +0000338option(
Jagpal Singh Gill57855662024-04-17 10:44:27 -0700339 'redfish-updateservice-use-dbus',
340 type: 'feature',
Jagpal Singh Gill64fa9162024-11-12 16:16:47 -0800341 value: 'enabled',
Jagpal Singh Gill57855662024-04-17 10:44:27 -0700342 description: '''Enables xyz.openbmc_project.Software.Update D-Bus interface
343 to propagate UpdateService requests to the corresponding
344 updater daemons instead of moving files to /tmp/images dir.
Ed Tanous50b37022024-06-25 13:00:04 -0700345 ''',
Jagpal Singh Gill57855662024-04-17 10:44:27 -0700346)
347
Ed Tanous6a371402024-12-03 14:01:25 -0800348# BMCWEB_REDFISH_ALLOW_SIMPLE_UPDATE
349option(
350 'redfish-allow-simple-update',
351 type: 'feature',
352 value: 'disabled',
353 description: '''Enables Redfish UpdateService SimpleUpdate Action. Note
354 that at this time this option is non-functional. Redfish
355 recommends using MultiPartUpdate.''',
356)
357
358
Jagpal Singh Gill57855662024-04-17 10:44:27 -0700359option(
Ed Tanous0cd5f782022-04-26 16:09:09 -0700360 'https_port',
361 type: 'integer',
Ed Tanous796ba932020-08-02 04:29:21 +0000362 min: -1,
Ed Tanous0cd5f782022-04-26 16:09:09 -0700363 max: 65535,
364 value: 443,
Ed Tanous796ba932020-08-02 04:29:21 +0000365 description: '''HTTPS default port number. Set to -1 to disable and rely
366 only on additional_ports''',
Ed Tanous0cd5f782022-04-26 16:09:09 -0700367)
Manojkiran Edaaf6298d2020-05-27 08:51:32 +0530368
Ed Tanous796ba932020-08-02 04:29:21 +0000369
370# Additional ports
371# This series of options below allows setting up non-trivial deployments of
372# bmcweb, binding specific ports, authentication profiles, and device binds to
373# multiple ports.
374# Setting these options incorrectly can have severe security consequences and
375# should be reserved for platform experts familiar with their particular
376# platforms security requirements.
377
378option(
379 'additional-ports',
380 type: 'array',
381 value: [],
382 description: '''Additional ports to listen to. Allows bmcweb to listen to
383 multiple ports at a given protocol''',
384)
385
386option(
387 'additional-protocol',
388 type: 'array',
389 value: [],
390 description: '''Allows specifying a specific protocol type for a given
391 additional-ports index. Allows setting http, https, or both
392 to each socket index. If not provided for a given
393 additional-ports index, assumes https.''',
394)
395
396option(
397 'additional-bind-to-device',
398 type: 'array',
399 value: [],
400 description: '''Allows specifying an SO_BINDTODEVICE or BindToDevice systemd
401 directive for each additional socket file. If not provided
402 for a given additional-ports index, assumes bind to all
403 devices''',
404)
405
406option(
407 'additional-auth',
408 type: 'array',
409 value: [],
410 description: '''Allows specifying an authentication profile for each socket
411 created with additional-ports. Allows auth or noauth, and
412 defaults to auth if not provided. If noauth is provided,
413 authentication will not be performed for a given socket/port
414 index.''',
415)
416# end additional ports
417
Ed Tanousc5bcf352024-09-25 16:41:10 -0700418# BMCWEB_DNS_RESOLVER
Carson Labrado7fb33562022-04-18 23:26:56 +0000419option(
Ed Tanousf8ca6d72022-06-28 12:12:03 -0700420 'dns-resolver',
421 type: 'combo',
422 choices: ['systemd-dbus', 'asio'],
423 value: 'systemd-dbus',
424 description: '''Sets which DNS resolver backend should be used.
425 systemd-dbus uses the Systemd ResolveHostname on dbus, but requires dbus
426 support. asio relies on boost::asio::tcp::resolver, but cannot resolve
Ed Tanous50b37022024-06-25 13:00:04 -0700427 names when boost threading is disabled.''',
Ed Tanousf8ca6d72022-06-28 12:12:03 -0700428)
429
Ed Tanousc5bcf352024-09-25 16:41:10 -0700430# BMCWEB_REDFISH_AGGREGATION
Ed Tanousf8ca6d72022-06-28 12:12:03 -0700431option(
Carson Labrado7fb33562022-04-18 23:26:56 +0000432 'redfish-aggregation',
433 type: 'feature',
434 value: 'disabled',
Ed Tanous50b37022024-06-25 13:00:04 -0700435 description: 'Allows this BMC to aggregate resources from satellite BMCs',
Carson Labrado7fb33562022-04-18 23:26:56 +0000436)
437
Ed Tanousc5bcf352024-09-25 16:41:10 -0700438# BMCWEB_HYPERVISOR_COMPUTER_SYSTEM
Ed Tanous7f3e84a2022-12-28 16:22:54 -0800439option(
Gunnar Mills68896202024-08-21 11:34:20 -0500440 'hypervisor-computer-system',
441 type: 'feature',
442 value: 'disabled',
443 description: '''This puts a hypervisor computer system resource at
444 /redfish/v1/Systems/hypervisor. This system resource has children
445 resources such as EthernetInterfaces and ComputerSystem.Reset.''',
446)
447
Ed Tanousc5bcf352024-09-25 16:41:10 -0700448# BMCWEB_EXPERIMENTAL_REDFISH_MULTI_COMPUTER_SYSTEM
Gunnar Mills68896202024-08-21 11:34:20 -0500449option(
Ed Tanous7f3e84a2022-12-28 16:22:54 -0800450 'experimental-redfish-multi-computer-system',
451 type: 'feature',
452 value: 'disabled',
453 description: '''This is a temporary option flag for staging the
454 ComputerSystemCollection transition to multi-host. It, as well as the code
Oliver Brewka06827462025-07-13 18:29:31 +0200455 still beneath it will be removed on 1/1/2026. Do not enable in a
Ed Tanous50b37022024-06-25 13:00:04 -0700456 production environment, or where API stability is required.''',
Ed Tanous7f3e84a2022-12-28 16:22:54 -0800457)
458
Ed Tanousb360d5b2024-07-02 11:49:19 -0700459# BMCWEB_EXPERIMENTAL_BMCWEB_USER
460option(
461 'experimental-bmcweb-user',
462 type: 'feature',
463 value: 'disabled',
464 description: '''Enable to run bmcweb as the bmcweb user. This is
465 experimental. Expect many things to be broken if you enable this
466 option, and this should not be used for production usage. This
467 option will be removed Q1 2026.''',
468)
469
Ed Tanous39fe3af2025-02-17 11:34:12 -0800470# BMCWEB_HTTP2
Ed Tanousfca2cbe2021-01-28 14:49:59 -0800471option(
Ed Tanous39fe3af2025-02-17 11:34:12 -0800472 'http2',
Ed Tanousfca2cbe2021-01-28 14:49:59 -0800473 type: 'feature',
Ed Tanous39fe3af2025-02-17 11:34:12 -0800474 value: 'enabled',
475 description: 'Enable HTTP/2 protocol support using nghttp2.',
Ed Tanousfca2cbe2021-01-28 14:49:59 -0800476)
477
rohitpaicf9085a2025-02-24 12:33:59 +0530478# BMCWEB_WATCHDOG_TIMEOUT
479option(
480 'watchdog-timeout-seconds',
481 type: 'integer',
482 min: 0,
483 max: 600,
484 value: 120,
485 description: '''Specifies the systemd watchdog timeout interval in seconds.
486 Set to 0 to disable the watchdog.''',
487)
488
Manojkiran Edaaf6298d2020-05-27 08:51:32 +0530489# Insecure options. Every option that starts with a `insecure` flag should
490# not be enabled by default for any platform, unless the author fully comprehends
491# the implications of doing so.In general, enabling these options will cause security
492# problems of varying degrees
493
Ed Tanousc5bcf352024-09-25 16:41:10 -0700494# BMCWEB_INSECURE_DISABLE_CSRF
Ed Tanous0cd5f782022-04-26 16:09:09 -0700495option(
496 'insecure-disable-csrf',
497 type: 'feature',
498 value: 'disabled',
499 description: '''Disable CSRF prevention checks.Should be set to false for
Ed Tanous50b37022024-06-25 13:00:04 -0700500 production systems.''',
Ed Tanous0cd5f782022-04-26 16:09:09 -0700501)
502
Ed Tanousc5bcf352024-09-25 16:41:10 -0700503# BMCWEB_INSECURE_DISABLE_SSL
Ed Tanous0cd5f782022-04-26 16:09:09 -0700504option(
505 'insecure-disable-ssl',
506 type: 'feature',
507 value: 'disabled',
508 description: '''Disable SSL ports. Should be set to false for production
Ed Tanous50b37022024-06-25 13:00:04 -0700509 systems.''',
Ed Tanous0cd5f782022-04-26 16:09:09 -0700510)
511
Ed Tanousc5bcf352024-09-25 16:41:10 -0700512# BMCWEB_INSECURE_DISABLE_AUTH
Ed Tanous0cd5f782022-04-26 16:09:09 -0700513option(
514 'insecure-disable-auth',
515 type: 'feature',
516 value: 'disabled',
Nan Zhoua43ea822022-05-27 00:42:44 +0000517 description: '''Disable authentication and authoriztion on all ports.
Ed Tanous50b37022024-06-25 13:00:04 -0700518 Should be set to false for production systems.''',
Ed Tanous0cd5f782022-04-26 16:09:09 -0700519)
520
Ed Tanousc5bcf352024-09-25 16:41:10 -0700521# BMCWEB_INSECURE_IGNORE_CONTENT_TYPE
Ed Tanous0cd5f782022-04-26 16:09:09 -0700522option(
Ed Tanous1aa0c2b2022-02-08 12:24:30 +0100523 'insecure-ignore-content-type',
524 type: 'feature',
Ed Tanousdb398022023-06-07 16:38:08 -0700525 value: 'disabled',
Ed Tanous1aa0c2b2022-02-08 12:24:30 +0100526 description: '''Allows parsing PUT/POST/PATCH content as JSON regardless
527 of the presence of the content-type header. Enabling this
528 conflicts with the input parsing guidelines, but may be
529 required to support old clients that may not set the
Ed Tanous50b37022024-06-25 13:00:04 -0700530 Content-Type header on payloads.''',
Ed Tanous1aa0c2b2022-02-08 12:24:30 +0100531)
532
Ed Tanousc5bcf352024-09-25 16:41:10 -0700533# BMCWEB_INSECURE_PUSH_STYLE_NOTIFICATION
Ed Tanous1aa0c2b2022-02-08 12:24:30 +0100534option(
Ed Tanous0cd5f782022-04-26 16:09:09 -0700535 'insecure-push-style-notification',
536 type: 'feature',
537 value: 'disabled',
Ed Tanous50b37022024-06-25 13:00:04 -0700538 description: 'Enable HTTP push style eventing feature',
Ed Tanous0cd5f782022-04-26 16:09:09 -0700539)
540
Ed Tanousc5bcf352024-09-25 16:41:10 -0700541# BMCWEB_INSECURE_ENABLE_REDFISH_QUERY
Ed Tanous0cd5f782022-04-26 16:09:09 -0700542option(
543 'insecure-enable-redfish-query',
544 type: 'feature',
545 value: 'disabled',
546 description: '''Enables Redfish expand query parameter. This feature is
547 experimental, and has not been tested against the full
548 limits of user-facing behavior. It is not recommended to
549 enable on production systems at this time. Other query
Ed Tanous50b37022024-06-25 13:00:04 -0700550 parameters such as only are not controlled by this option.''',
Ed Tanous0cd5f782022-04-26 16:09:09 -0700551)