Bug 1598437 - Changing ironic driver for a node is cumbersome
Summary: Changing ironic driver for a node is cumbersome
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: python-ironicclient
Version: 14.0 (Rocky)
Hardware: Unspecified
OS: Unspecified
medium
medium
Target Milestone: Upstream M3
: 14.0 (Rocky)
Assignee: Dmitry Tantsur
QA Contact: Alexander Chuzhoy
URL:
Whiteboard:
Depends On: 1620232
Blocks:
TreeView+ depends on / blocked
 
Reported: 2018-07-05 13:18 UTC by Dmitry Tantsur
Modified: 2019-01-11 11:50 UTC (History)
6 users (show)

Fixed In Version: python-ironicclient-2.5.0-0.20180810135843.fb94fb8.el7ost openstack-ironic-11.1.1-0.20180827214805.65ab326.el7ost
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2019-01-11 11:50:23 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
OpenStack Storyboard 2002868 0 None None None 2018-07-05 13:18:34 UTC
OpenStack gerrit 580377 0 None MERGED Support resetting interfaces to their default values 2020-12-08 02:44:04 UTC
OpenStack gerrit 582951 0 None MERGED Add reset_interfaces parameter to node's PATCH 2020-12-08 02:44:31 UTC
OpenStack gerrit 583226 0 None MERGED Add support for reset_interfaces in node's PATCH 2020-12-08 02:44:04 UTC
Red Hat Product Errata RHEA-2019:0045 0 None None None 2019-01-11 11:50:37 UTC

Description Dmitry Tantsur 2018-07-05 13:18:35 UTC
Take this example:

$ openstack baremetal node create --name test --driver fake-hardware
$ openstack baremetal node set --driver ipmi test
management interface implementation '<ironic.drivers.modules.fake.FakeManagement object at 0x7f171f63e950>' is not supported by hardware type IPMIHardware. (HTTP 400)

We should allow a user to reset all interfaces to their defaults.

Comment 4 mlammon 2018-09-20 17:07:06 UTC
This depends on https://bugzilla.redhat.com/show_bug.cgi?id=1620232 currently in POST state.  The workaround is to unset OS_BAREMETAL_API_VERSION

Comment 5 Alexander Chuzhoy 2018-10-16 23:17:29 UTC
failed_qa:
Environment:
python2-ironicclient-2.5.0-0.20180810135843.fb94fb8.el7ost.noarch
openstack-ironic-api-11.1.1-0.20181001152939.4167083.el7ost.noarch
openstack-ironic-common-11.1.1-0.20181001152939.4167083.el7ost.noarch



(undercloud) [stack@undercloud-0 ~]$ openstack baremetal driver list
+---------------------+---------------------------+
| Supported driver(s) | Active host(s)            |
+---------------------+---------------------------+
| idrac               | undercloud-0.redhat.local |
| ilo                 | undercloud-0.redhat.local |
| ipmi                | undercloud-0.redhat.local |
| redfish             | undercloud-0.redhat.local |
+---------------------+---------------------------+
(undercloud) [stack@undercloud-0 ~]$ openstack baremetal node show compute-0 -f value -c driver
ipmi
(undercloud) [stack@undercloud-0 ~]$ openstack baremetal node set --driver idrac compute-0
management interface implementation '<ironic.drivers.modules.ipmitool.IPMIManagement object at 0x7fd770aba290>' is not supported by hardware type IDRACHardware. (HTTP 400)
(undercloud) [stack@undercloud-0 ~]$ openstack baremetal node set --driver ilo compute-0
management interface implementation '<ironic.drivers.modules.ipmitool.IPMIManagement object at 0x7fd770aba290>' is not supported by hardware type IloHardware. (HTTP 400)
(undercloud) [stack@undercloud-0 ~]$ openstack baremetal node set --driver redfish compute-0
management interface implementation '<ironic.drivers.modules.ipmitool.IPMIManagement object at 0x7fd770aba290>' is not supported by hardware type RedfishHardware. (HTTP 400)

Comment 6 Dmitry Tantsur 2018-10-17 09:21:59 UTC
You did not use either of the new arguments, it was not expected to work. Try

 openstack baremetal node set --driver idrac --reset-interfaces compute-0

or try listing each failing interface:

 openstack baremetal node set --driver idrac --reset-management-interface --reset...interface compute-0

Comment 7 Alexander Chuzhoy 2018-10-17 14:35:43 UTC
Verified:
Environment:
python2-ironicclient-2.5.0-0.20180810135843.fb94fb8.el7ost.noarch
openstack-ironic-api-11.1.1-0.20181001152939.4167083.el7ost.noarch
openstack-ironic-common-11.1.1-0.20181001152939.4167083.el7ost.noarch

The usage is:
(undercloud) [stack@undercloud-0 ~]$ openstack baremetal node show compute-0 -f value -c driver
ilo

(undercloud) [stack@undercloud-0 ~]$ openstack baremetal node set --driver idrac --reset-interfaces compute-0
(undercloud) [stack@undercloud-0 ~]$ openstack baremetal node show compute-0 -f value -c driver
idrac

(undercloud) [stack@undercloud-0 ~]$ openstack baremetal node set --driver ipmi --reset-interfaces compute-0
(undercloud) [stack@undercloud-0 ~]$ openstack baremetal node show compute-0 -f value -c driver
ipmi

Comment 9 errata-xmlrpc 2019-01-11 11:50:23 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHEA-2019:0045


Note You need to log in before you can comment on or make changes to this bug.