Bug 1552786

Summary: registering nodes via UI requires specifying MAC
Product: Red Hat OpenStack Reporter: Alexander Chuzhoy <sasha>
Component: rhosp-director-uiAssignee: Jiri Tomasek <jtomasek>
Status: CLOSED WONTFIX QA Contact: Arik Chernetsky <achernet>
Severity: medium Docs Contact:
Priority: medium    
Version: 12.0 (Pike)CC: apannu, beth.white, jrist, jtomasek, rbrady, rhel-osp-director-maint, sclewis, ukalifon
Target Milestone: ---Keywords: Triaged, ZStream
Target Release: 14.0 (Rocky)   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-05-16 15:54:24 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Alexander Chuzhoy 2018-03-07 18:08:24 UTC
registering nodes via UI requires specifying MAC

Environment:
python-ironic-lib-2.10.0-1.el7ost.noarch
puppet-ironic-11.3.0-2.el7ost.noarch
python-ironic-inspector-client-2.1.0-1.el7ost.noarch
openstack-tripleo-ui-7.4.3-4.el7ost.noarch
openstack-ironic-conductor-9.1.2-3.el7ost.noarch
openstack-ironic-inspector-6.0.0-3.el7ost.noarch
openstack-ironic-api-9.1.2-3.el7ost.noarch
instack-undercloud-7.4.3-5.el7ost.noarch
openstack-ironic-common-9.1.2-3.el7ost.noarch
python-ironicclient-1.17.0-1.el7ost.noarch


Steps to reproduce:
1. have an undercloud deployed with UI enabled.
2, Try to import nodes from a file, where the file doesn't have macs:

Example entry from the file:
        {
            "pm_type":"pxe_ipmitool",
            "capabilities": "node:baremetal-5,profile:someprofile,boot_option:local",
            "name": "somename",
            "pm_user":"someuser",
            "pm_password":"somepassword",
            "pm_addr":"someip"
        }

Result:
The import will notify about missing MAC addresses.

Expected result:
The import should continue, because it works in CLI.

Comment 1 Jiri Tomasek 2018-03-08 12:57:54 UTC
After discussing this with dtantsur, fixing this requires multiple steps. MAC address is required in case of using certain ironic drivers and vbmc. Otherwise it is not possible to successfully introspect the node.

So to remove MAC address as a required parameter from nodes registration, we need to update ValidateNodes Mistral action to validate presence of MAC in case when driver which requires it is used, to detect Good enough vbmc detection seems to be: 'if there are several nodes with the same IPMI address being registered'

Comment 3 Radomir Dopieralski 2018-04-18 14:58:30 UTC
Can you please comment on comment 1?

Comment 4 Ryan Brady 2018-04-19 12:57:44 UTC
The ValidateNodes action is simply a wrapper that calls a utility method in tripleo-common/utils/nodes.py.  You can change the utility method and shouldn't need to change the action.

Comment 8 Jiri Tomasek 2018-06-25 12:46:01 UTC
No, the UI code needs to get udpdated to use ports instead of mac addresses as described in the referenced patch.

Comment 11 Beth White 2019-05-16 15:54:24 UTC
The GUI is no longer supported in OSP14. The last supported release for the GUI is OSP13. Closing as won't fix.