[RFE] Add hardware type for servers controlled by Dell EMC integrated Dell Remote Access Controller (iDRAC) with Lifecycle Controller

Bug #1705741 reported by Richard G. Pioso
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Ironic
Fix Released
Wishlist
Richard G. Pioso

Bug Description

Ironic is engaged in a driver composition reform [0]. That reform places hardware vendors in charge of defining hardware types for their hardware. This Request for Enhancement (RFE) proposes adding a single hardware type for servers controlled by iDRACs. That would support ironic dynamic drivers.

[0] http://specs.openstack.org/openstack/ironic-specs/specs/7.0/driver-composition-reform.html

Changed in ironic:
assignee: nobody → Richard G. Pioso (richard.pioso)
Revision history for this message
Dmitry Tantsur (divius) wrote :

Approving this RFE as it's a follow-up to the already approved driver composition work.

tags: added: rfe-approved
Changed in ironic:
status: New → Confirmed
importance: Undecided → Wishlist
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to ironic (master)

Fix proposed to branch: master
Review: https://review.openstack.org/491263

Changed in ironic:
status: Confirmed → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix proposed to ironic (master)

Related fix proposed to branch: master
Review: https://review.openstack.org/493421

Changed in ironic:
assignee: Richard G. Pioso (richard.pioso) → Pavlo Shchelokovskyy (pshchelo)
Changed in ironic:
assignee: Pavlo Shchelokovskyy (pshchelo) → Richard G. Pioso (richard.pioso)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix proposed to ironic (stable/pike)

Related fix proposed to branch: stable/pike
Review: https://review.openstack.org/494736

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to ironic (stable/pike)

Fix proposed to branch: stable/pike
Review: https://review.openstack.org/494737

Changed in ironic:
assignee: Richard G. Pioso (richard.pioso) → Vladyslav Drok (vdrok)
Vladyslav Drok (vdrok)
Changed in ironic:
assignee: Vladyslav Drok (vdrok) → Richard G. Pioso (richard.pioso)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix merged to ironic (master)

Reviewed: https://review.openstack.org/493421
Committed: https://git.openstack.org/cgit/openstack/ironic/commit/?id=86e3a100a3a6fcfcf9d498886e1d7784f07ecd73
Submitter: Jenkins
Branch: master

commit 86e3a100a3a6fcfcf9d498886e1d7784f07ecd73
Author: Richard Pioso <email address hidden>
Date: Sun Aug 13 21:10:06 2017 -0400

    Fix DRAC classic driver double manage/provide

    This change fixes an issue that caused a node using a Dell EMC
    integrated Dell Remote Access Controller (iDRAC) classic driver,
    'pxe_drac' or 'pxe_drac_inspector', to be placed in the 'clean failed'
    state after a double manage/provide cycle, instead of the 'available'
    state.

    The deploy interface implementation used by iDRAC classic drivers has
    been class ironic.drivers.modules.drac.deploy.DracDeploy, which is
    derived from class ironic.drivers.modules.iscsi_deploy.ISCSIDeploy. The
    only difference between them is that DracDeploy overrides the
    prepare_cleaning() method to prevent the booting of the Ironic Python
    Agent (IPA) ramdisk when only out-of-band RAID clean steps are
    requested. However, it caused the issue and did not have its intended
    effect, because Ironic Conductor boots the ramdisk regardless. The
    Ironic Conductor should be modified to preclude the booting of the IPA
    ramdisk fix, rather than leaving it to individual drivers.

    The iDRAC classic drivers' deploy interface implementation has been
    changed to ISCSIDeploy. Since class DracDeploy is no longer needed, its
    source code and automated tests have been removed.

    Change-Id: Ib2c9b7f9f780aaf5f6345825b1f6c9ddb4f9c41f
    Closes-Bug: #1676387
    Related-Bug: #1572529
    Related-Bug: #1705741

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to ironic (master)

Reviewed: https://review.openstack.org/491263
Committed: https://git.openstack.org/cgit/openstack/ironic/commit/?id=d75fecc974bb9233cf41a457af35e1911232a2d9
Submitter: Jenkins
Branch: master

commit d75fecc974bb9233cf41a457af35e1911232a2d9
Author: Richard Pioso <email address hidden>
Date: Sun Aug 6 13:01:43 2017 -0400

    Add 'hardware type' for Dell EMC iDRACs

    The ironic project is engaged in a driver composition reform [0] which
    introduces dynamic drivers. That reform places hardware vendors in
    charge of defining a new form of drivers for their hardware. The new
    form is called 'hardware type'. The reform will deprecate [1] the
    existing ironic drivers, which are now referred to as 'classic drivers'.

    This change adds a single new 'hardware type', 'idrac', for servers
    controlled by Dell EMC integrated Dell Remote Access Controllers
    (iDRAC).

    [0]
    http://specs.openstack.org/openstack/ironic-specs/specs/7.0/driver-composition-reform.html
    [1]
    http://specs.openstack.org/openstack/ironic-specs/specs/not-implemented/classic-drivers-future.html

    Change-Id: Ie332a5adebfc229a79663c771c9f4409174dd8c9
    Closes-Bug: #1705741
    Related-Bug: #1676387

Changed in ironic:
status: In Progress → Fix Released
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix merged to ironic (stable/pike)

Reviewed: https://review.openstack.org/494736
Committed: https://git.openstack.org/cgit/openstack/ironic/commit/?id=8d63821bdd6df30d0a015cf427b42432e7a2603c
Submitter: Jenkins
Branch: stable/pike

commit 8d63821bdd6df30d0a015cf427b42432e7a2603c
Author: Richard Pioso <email address hidden>
Date: Sun Aug 13 21:10:06 2017 -0400

    Fix DRAC classic driver double manage/provide

    This change fixes an issue that caused a node using a Dell EMC
    integrated Dell Remote Access Controller (iDRAC) classic driver,
    'pxe_drac' or 'pxe_drac_inspector', to be placed in the 'clean failed'
    state after a double manage/provide cycle, instead of the 'available'
    state.

    The deploy interface implementation used by iDRAC classic drivers has
    been class ironic.drivers.modules.drac.deploy.DracDeploy, which is
    derived from class ironic.drivers.modules.iscsi_deploy.ISCSIDeploy. The
    only difference between them is that DracDeploy overrides the
    prepare_cleaning() method to prevent the booting of the Ironic Python
    Agent (IPA) ramdisk when only out-of-band RAID clean steps are
    requested. However, it caused the issue and did not have its intended
    effect, because Ironic Conductor boots the ramdisk regardless. The
    Ironic Conductor should be modified to preclude the booting of the IPA
    ramdisk fix, rather than leaving it to individual drivers.

    The iDRAC classic drivers' deploy interface implementation has been
    changed to ISCSIDeploy. Since class DracDeploy is no longer needed, its
    source code and automated tests have been removed.

    Change-Id: Ib2c9b7f9f780aaf5f6345825b1f6c9ddb4f9c41f
    Closes-Bug: #1676387
    Related-Bug: #1572529
    Related-Bug: #1705741
    (cherry picked from commit f049eae3fc6aadab69d9d9faf9de89bb1f7e4f38)

tags: added: in-stable-pike
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to ironic (stable/pike)

Reviewed: https://review.openstack.org/494737
Committed: https://git.openstack.org/cgit/openstack/ironic/commit/?id=ccbcd9f52029a3ef7626636a9fbda17615eadb8b
Submitter: Jenkins
Branch: stable/pike

commit ccbcd9f52029a3ef7626636a9fbda17615eadb8b
Author: Richard Pioso <email address hidden>
Date: Sun Aug 6 13:01:43 2017 -0400

    Add 'hardware type' for Dell EMC iDRACs

    The ironic project is engaged in a driver composition reform [0] which
    introduces dynamic drivers. That reform places hardware vendors in
    charge of defining a new form of drivers for their hardware. The new
    form is called 'hardware type'. The reform will deprecate [1] the
    existing ironic drivers, which are now referred to as 'classic drivers'.

    This change adds a single new 'hardware type', 'idrac', for servers
    controlled by Dell EMC integrated Dell Remote Access Controllers
    (iDRAC).

    [0]
    http://specs.openstack.org/openstack/ironic-specs/specs/7.0/driver-composition-reform.html
    [1]
    http://specs.openstack.org/openstack/ironic-specs/specs/not-implemented/classic-drivers-future.html

    Change-Id: Ie332a5adebfc229a79663c771c9f4409174dd8c9
    Closes-Bug: #1705741
    Related-Bug: #1676387
    (cherry picked from commit 22e716d9808725efea18b8236dd4fe1616d754f2)

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/ironic 9.1.0

This issue was fixed in the openstack/ironic 9.1.0 release.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix proposed to ironic (stable/ocata)

Related fix proposed to branch: stable/ocata
Review: https://review.openstack.org/498412

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix merged to ironic (stable/ocata)

Reviewed: https://review.openstack.org/498412
Committed: https://git.openstack.org/cgit/openstack/ironic/commit/?id=f68f92a917bd50ea21bd000287b8dd8d829b7a01
Submitter: Jenkins
Branch: stable/ocata

commit f68f92a917bd50ea21bd000287b8dd8d829b7a01
Author: Richard Pioso <email address hidden>
Date: Sun Aug 13 21:10:06 2017 -0400

    Fix DRAC classic driver double manage/provide

    This change fixes an issue that caused a node using a Dell EMC
    integrated Dell Remote Access Controller (iDRAC) classic driver,
    'pxe_drac' or 'pxe_drac_inspector', to be placed in the 'clean failed'
    state after a double manage/provide cycle, instead of the 'available'
    state.

    The deploy interface implementation used by iDRAC classic drivers has
    been class ironic.drivers.modules.drac.deploy.DracDeploy, which is
    derived from class ironic.drivers.modules.iscsi_deploy.ISCSIDeploy. The
    only difference between them is that DracDeploy overrides the
    prepare_cleaning() method to prevent the booting of the Ironic Python
    Agent (IPA) ramdisk when only out-of-band RAID clean steps are
    requested. However, it caused the issue and did not have its intended
    effect, because Ironic Conductor boots the ramdisk regardless. The
    Ironic Conductor should be modified to preclude the booting of the IPA
    ramdisk fix, rather than leaving it to individual drivers.

    The iDRAC classic drivers' deploy interface implementation has been
    changed to ISCSIDeploy. Since class DracDeploy is no longer needed, its
    source code and automated tests have been removed.

    Change-Id: Ib2c9b7f9f780aaf5f6345825b1f6c9ddb4f9c41f
    Closes-Bug: #1676387
    Related-Bug: #1572529
    Related-Bug: #1705741
    (cherry picked from commit 86e3a100a3a6fcfcf9d498886e1d7784f07ecd73)

tags: added: in-stable-ocata
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/ironic 9.2.0

This issue was fixed in the openstack/ironic 9.2.0 release.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.