summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKaifeng Wang <kaifeng.w@gmail.com>2018-07-18 15:58:27 +0800
committerTony Breeds <tony@bakeyournoodle.com>2018-12-12 15:19:23 +1100
commitf55ae7e03d616cd1286d74b7ca3a235e64b1233e (patch)
tree4b12f9d6879efaf15728c492a6266f6cd7c9c326
parent6a6c0d882fe8ac299d18df75d2bbd111b170ad48 (diff)
downloadironic-f55ae7e03d616cd1286d74b7ca3a235e64b1233e.tar.gz
[Stable Only] rename ipmi_disable_timeout to ipmi_disable_boot_timeout11.1.1
On master during the addition of a configuration parameter to set the IPMI behaviour the ipmi driver_info option was also renamed. This stable only chnage is a partial backport of the master chnage to rename the driver_info filed without adding the config option. Conflicts: ironic/conf/ipmi.py ironic/tests/unit/conductor/test_manager.py Change-Id: Ie049bbaf45aeab54c1272d1d561c5a6ca00dc34a Story: 2002977 Task: 22985 (cherry picked from commit d379357cadbefd200f877ae7c725d7c6a1024ee5)
-rw-r--r--api-ref/source/samples/driver-property-response.json2
-rw-r--r--ironic/drivers/modules/ipmitool.py21
-rw-r--r--ironic/tests/unit/conductor/test_manager.py2
-rw-r--r--ironic/tests/unit/drivers/modules/test_ipmitool.py2
-rw-r--r--releasenotes/notes/story-2004266-4725d327900850bf.yaml4
5 files changed, 17 insertions, 14 deletions
diff --git a/api-ref/source/samples/driver-property-response.json b/api-ref/source/samples/driver-property-response.json
index 0cab58c10..ca946852b 100644
--- a/api-ref/source/samples/driver-property-response.json
+++ b/api-ref/source/samples/driver-property-response.json
@@ -7,7 +7,7 @@
"image_no_proxy": "A comma-separated list of host names, IP addresses and domain names (with optional :port) that will be excluded from proxying. To denote a domain name, use a dot to prefix the domain name. This value will be ignored if ``image_http_proxy`` and ``image_https_proxy`` are not specified. Optional.",
"ipmi_address": "IP address or hostname of the node. Required.",
"ipmi_bridging": "bridging_type; default is \"no\". One of \"single\", \"dual\", \"no\". Optional.",
- "ipmi_disable_timeout": "By default ironic will send a raw IPMI command to disable the 60 second timeout for booting. Setting this option to False will NOT send that command; default value is True. Optional.",
+ "ipmi_disable_boot_timeout": "By default ironic will send a raw IPMI command to disable the 60 second timeout for booting. Setting this option to False will NOT send that command; default value is True. Optional.",
"ipmi_force_boot_device": "Whether Ironic should specify the boot device to the BMC each time the server is turned on, eg. because the BMC is not capable of remembering the selected boot device across power cycles; default value is False. Optional.",
"ipmi_local_address": "local IPMB address for bridged requests. Used only if ipmi_bridging is set to \"single\" or \"dual\". Optional.",
"ipmi_password": "password. Optional.",
diff --git a/ironic/drivers/modules/ipmitool.py b/ironic/drivers/modules/ipmitool.py
index 9325fb386..12f5370fe 100644
--- a/ironic/drivers/modules/ipmitool.py
+++ b/ironic/drivers/modules/ipmitool.py
@@ -98,11 +98,14 @@ OPTIONAL_PROPERTIES = {
"capable of remembering the selected boot "
"device across power cycles; default value "
"is False. Optional."),
- 'ipmi_disable_timeout': _('By default ironic will send a raw IPMI '
- 'command to disable the 60 second timeout '
- 'for booting. Setting this option to '
- 'False will NOT send that command; default '
- 'value is True. Optional.'),
+ 'ipmi_disable_boot_timeout': _('By default ironic will send a raw IPMI '
+ 'command to disable the 60 second timeout '
+ 'for booting. Setting this option to '
+ 'False will NOT send that command on '
+ 'this node. The '
+ '[ipmi]disable_boot_timeout will be '
+ 'used if this option is not set. '
+ 'Optional.'),
}
COMMON_PROPERTIES = REQUIRED_PROPERTIES.copy()
COMMON_PROPERTIES.update(OPTIONAL_PROPERTIES)
@@ -920,8 +923,8 @@ class IPMIManagement(base.ManagementInterface):
# NOTE(tonyb): Some BMCs do not implement Option 0x03, such as OpenBMC
# and will error when we try to set this. Resulting in an abort. If
# the BMC doesn't support this timeout there isn't a need to disable
- # it. Let's use a driver option to signify that
- idt = task.node.driver_info.get('ipmi_disable_timeout', True)
+ # it. Let's use a driver option to signify that.
+ idt = task.node.driver_info.get('ipmi_disable_boot_timeout', True)
if strutils.bool_from_string(idt):
# note(JayF): IPMI spec indicates unless you send these raw bytes
# the boot device setting times out after 60s. Since it's possible
@@ -932,8 +935,8 @@ class IPMIManagement(base.ManagementInterface):
send_raw(task, timeout_disable)
else:
LOG.info('For node %(node_uuid)s, '
- 'driver_info[\'ipmi_disable_timeout\'] is set to False, '
- 'so not sending ipmi boot-timeout-disable',
+ 'driver_info[\'ipmi_disable_boot_timeout\'] is set '
+ 'to False, so not sending ipmi boot-timeout-disable',
{'node_uuid', task.node.uuid})
if task.node.driver_info.get('ipmi_force_boot_device', False):
diff --git a/ironic/tests/unit/conductor/test_manager.py b/ironic/tests/unit/conductor/test_manager.py
index 7a37ad22f..45a033acc 100644
--- a/ironic/tests/unit/conductor/test_manager.py
+++ b/ironic/tests/unit/conductor/test_manager.py
@@ -6718,7 +6718,7 @@ class ManagerTestProperties(mgr_utils.ServiceSetUpMixin, db_base.DbTestCase):
'deploy_kernel', 'deploy_ramdisk',
'force_persistent_boot_device', 'ipmi_protocol_version',
'ipmi_force_boot_device', 'deploy_forces_oob_reboot',
- 'ipmi_disable_timeout']
+ 'ipmi_disable_boot_timeout']
self._check_driver_properties("ipmi", expected)
def test_driver_properties_snmp(self):
diff --git a/ironic/tests/unit/drivers/modules/test_ipmitool.py b/ironic/tests/unit/drivers/modules/test_ipmitool.py
index 5d07e6bfd..252d22626 100644
--- a/ironic/tests/unit/drivers/modules/test_ipmitool.py
+++ b/ironic/tests/unit/drivers/modules/test_ipmitool.py
@@ -1960,7 +1960,7 @@ class IPMIToolDriverTestCase(Base):
with task_manager.acquire(self.context, self.node.uuid) as task:
driver_info = task.node.driver_info
- driver_info['ipmi_disable_timeout'] = 'False'
+ driver_info['ipmi_disable_boot_timeout'] = 'False'
task.node.driver_info = driver_info
self.management.set_boot_device(task, boot_devices.PXE)
diff --git a/releasenotes/notes/story-2004266-4725d327900850bf.yaml b/releasenotes/notes/story-2004266-4725d327900850bf.yaml
index 41f34decc..c8e27e8fb 100644
--- a/releasenotes/notes/story-2004266-4725d327900850bf.yaml
+++ b/releasenotes/notes/story-2004266-4725d327900850bf.yaml
@@ -6,8 +6,8 @@ fixes:
received within 60-second timeout (countdown restarts when a Chassis
Control command is received). Some BMCs do not support setting this; if
sent it causes the boot to be aborted instead. For IPMI hardware type a
- new driver option ``node['driver_info']['ipmi_disable_timeout']`` can be
- specified. It is ``True`` by default; set it to ``False`` to bypass
+ new driver option ``node['driver_info']['ipmi_disable_boot_timeout']`` can
+ be specified. It is ``True`` by default; set it to ``False`` to bypass
sending this command. See `story 2004266
<https://storyboard.openstack.org/#!/story/2004266>`_ for additional
information.