[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

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

I am for it also.
But with Train just released, from Sean email, how does it get into Train?

-----Original Message-----
From: Julia Kreger <juliaashleykreger at gmail.com> 
Sent: Wednesday, October 16, 2019 9:27 AM
To: Pioso, Richard
Cc: openstack-discuss
Subject: Re: [ironic][release][stable] Ironic Train release can be broken due to entry in driver-requirements.txt


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 anyway.

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/b8ae681b37eec617736ac4
> a507e9a8b3a19e8a58/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 at 14