summaryrefslogtreecommitdiff
path: root/ironic/conf
diff options
context:
space:
mode:
authorAija Jauntēva <aija.jaunteva@dell.com>2021-12-09 09:54:41 -0500
committerAija Jauntēva <aija.jaunteva@dell.com>2022-01-17 08:34:57 +0000
commit960f10a902a9286b93ab953d96023b8c1d978fe3 (patch)
tree1e302150b0c7c0fc91244d22bbec23b4f5fa5d5d /ironic/conf
parent097ec2f8eefec6ac8ae3bbc547d5b9975b9750ba (diff)
downloadironic-960f10a902a9286b93ab953d96023b8c1d978fe3.tar.gz
Add more sources to redfish firmware upgrade
Adds swift and file support for `redfish` management interface `firmware_update` step. Adds `source` to step and `[redfish]firmware_source` to config for setting up if and how files are staged. Support `http`, `local` and `swift` for staging. Adds `checksum` to step for checksum verification when file is staged. Story: 2008723 Task: 42067 Change-Id: Ibcc7815b32344d67f912d7dcda7283bac3582316
Diffstat (limited to 'ironic/conf')
-rw-r--r--ironic/conf/redfish.py15
1 files changed, 15 insertions, 0 deletions
diff --git a/ironic/conf/redfish.py b/ironic/conf/redfish.py
index eddf3e013..3cc9fe015 100644
--- a/ironic/conf/redfish.py
+++ b/ironic/conf/redfish.py
@@ -90,6 +90,21 @@ opts = [
default=60,
help=_('Number of seconds to wait between checking for '
'failed firmware update tasks')),
+ cfg.StrOpt('firmware_source',
+ choices=[('http', _('If firmware source URL is also HTTP, then '
+ 'serve from original location, otherwise '
+ 'copy to ironic\'s HTTP server. Default.')),
+ ('local', _('Download from original location and '
+ 'server from ironic\'s HTTP server.')),
+ ('swift', _('If firmware source URL is also Swift, '
+ 'serve from original location, otherwise '
+ 'copy to ironic\'s Swift server.'))],
+ default='http',
+ mutable=True,
+ help=_('Specifies how firmware image should be served. Whether '
+ 'from its original location using the firmware source '
+ 'URL directly, or should serve it from ironic\'s Swift '
+ 'or HTTP server.')),
cfg.IntOpt('raid_config_status_interval',
min=0,
default=60,