[ironic][release][stable] Ironic Train release can be broken due to entry in driver-requirements.txt

Julia Kreger juliaashleykreger at gmail.com
Wed Oct 16 14:26:33 UTC 2019

I'm okay if we just change driver-requirements.txt at this point and
go ahead and cut new release for ironic. I actually feel like we
should have bumped driver-requirements.txt after releasing sushy 2.0.0

The bottom line is we need to focus on the user experience of using
the software. For ironic, if a vendor's class of gear just doesn't
work with a possible combination, then we should try and take the
least resistance and greatest impact path to remedying that situation.

As for the "prevents a prior release" portion of policy, That is
likely written for the projects that perform release candidates and
not projects that do not. At least, that is my current feeling. That
seems super counter-intuitive for ironic's release model if there is a
major bug that is identified that needs to be fixed in the software we
have shipped.


On Tue, Oct 15, 2019 at 6:21 PM <Richard.Pioso at dell.com> wrote:
> Hi,
> The Ironic Train release can be broken due to an entry in its driver-requirements.txt. driver-requirements.txt defines a dependency on the sushy package [1] which can be satisfied by version 1.9.0. Unfortunately, that version contains a few bugs which prevent Ironic from being able to manage Dell EMC and perhaps other vendors' bare metal hardware with its Redfish hardware type (driver). The fixes to them [2][3][4] were merged into master before the creation of stable/train. Therefore, they are available on stable/train and in the last sushy release created during the Train cycle, 2.0.0, the only other version which can satisfy the dependency today. However, consumers -- packagers, operators, and users -- could, fighting time constraints or lacking solid visibility into Ironic, package or install Ironic with sushy 1.9.0 to satisfy the dependency, but, in so doing, unknowingly render the package or installation severely broken.
> A change [5] has been proposed as part of a prospective solution to this issue. It creates a new release of sushy from the change which fixes the first bug [2]. Review comments [6] discuss basing the new release on a more recent stable/train change to pick up other bug fixes and, less importantly, backward compatible feature modifications and enhancements which merged before the change from which 2.0.0 was created. Backward compatible feature modifications and enhancements are interspersed in time among the bug fixes. Once a new release is available, the sushy entry in driver-requirements.txt on stable/train would be updated. However, apparently, the stable branch policy prevents releases from being done at a point earlier than the last release within a given cycle [6], which was 2.0.0.
> Another possible resolution which comes to mind is to change the definition of the sushy dependency in driver-requirements.txt [1] from "sushy>=1.9.0" to "sushy>=2.0.0".
> Does anyone have a suggestion on how to proceed?
> Thank you,
> Rick
> [1] https://opendev.org/openstack/ironic/src/commit/b8ae681b37eec617736ac4a507e9a8b3a19e8a58/driver-requirements.txt#L14
> [2] https://review.opendev.org/#/c/666253/
> [3] https://review.opendev.org/#/c/668936/
> [4] https://review.opendev.org/#/c/669889/
> [5] https://review.opendev.org/#/c/688551/
> [6] https://review.opendev.org/#/c/688551/1/deliverables/train/sushy.yaml@14

More information about the openstack-discuss mailing list