<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
</head>
<body><p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">Hi,</p>
<br /><p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">On środa, 20 kwietnia 2022 13:19:10 CEST Előd Illés wrote:</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> Hi,</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> At the very same time at the PTG we discussed this on the Release </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> Management session [1] as well. To release deliverables without </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> significant content is not ideal and this came up in previous </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> discussions as well. On the other hand unfortunately this is the most </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> feasible solution from release management team perspective especially </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> because the team is quite small (new members are welcome! feel free to </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> join the release management team! :)).</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> To change to independent release model is an option for some cases, but </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> not for every project. (It is less clear for consumers what version </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> is/should be used for which series; Fixing problems that comes up in </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> specific stable branches, is not possible; testing the deliverable </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> against a specific stable branch constraints is not possiblel; etc.)</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> See some other comments inline.</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> [1] https://etherpad.opendev.org/p/april2022-ptg-rel-mgt#L44</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> Előd</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> On 2022. 04. 19. 18:01, Michael Johnson wrote:</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> > Comments inline.</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> ></p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> > Michael</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> ></p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> > On Tue, Apr 19, 2022 at 6:34 AM Slawek Kaplonski<skaplons@redhat.com> wrote:</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> >> Hi,</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> >></p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> >></p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> >> During the Zed PTG sessions in the TC room we were discussing some ideas how we can improve project governance.</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> >></p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> >> One of the topics was related to the projects which don't really have any changes in the cycle. Currently we are forcing to do new release of basically the same code when it comes to the end of the cycle.</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> >></p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> >> Can/Should we maybe change that and e.g. instead of forcing new release use last released version of the of the repo for new release too?</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> > In the past this has created confusion in the community about if a</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> > project has been dropped/removed from OpenStack. That said, I think</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> > this is the point of the "independent" release classification.</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> Yes, exactly as Michael says.</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> >> If yes, should we then automatically propose change of the release model to the "independent" maybe?</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> > Personally, I would prefer to send an email to the discuss list</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> > proposing the switch to independent. Patches can sometimes get merged</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> > before everyone gets to give input. Especially since the patch would</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> > be proposed in the "releases" project and may not be on the team's</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> > dashboards.</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> The release process catches libraries only (that had no merged change), </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> so the number is not that huge, sending a mail seems to be a fair option.</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> (The process says: "Evaluate any libraries that did not have any change </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> merged over the cycle to see if it is time to transition them to the </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> independent release model </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> <https://releases.openstack.org/reference/release_models.html#openstack-related-libraries>.</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> Note: client libraries (and other libraries strongly tied to another </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> deliverable) should generally follow their parent deliverable release </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> model, even if they did not have a lot of activity themselves).")</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> >> What would be the best way how Release Management team can maybe notify TC about such less active projects which don't needs any new release in the cycle? That could be one of the potential conditions to check project's health by the TC team.</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> > It seems like this would be a straight forward script to write given</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> > we already have tools to capture the list of changes included in a</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> > given release.</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> There are a couple of good signals already for TC to catch inactive </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> projects, like the generated patches that are not merged, for example:</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> https://review.opendev.org/q/topic:reno-yoga+is:open</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> https://review.opendev.org/q/topic:create-yoga+is:open</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> https://review.opendev.org/q/topic:add-xena-python-jobtemplates+is:open</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> (Note that in the past not merged patches caused issues and discussing </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> with the TC resulted a suggestion to force-merge them to avoid future </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> issues)</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> >> Another question is related to the projects which aren't really active and are broken during the final release time. We had such problem in the last cycle, see [1] for details. Should we still force pushing fixes for them to be able to release or maybe should we consider deprecation of such projects and not to release it at all?</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> > In the past we have simply not released projects that are broken and</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> > don't have people actively working on fixing them. It has been a</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> > signal to the community that if they value the project they need to</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> > contribute to it.</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> Yes, that's a fair point, too, maybe those broken deliverables should </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> not be released at all. I'm not sure, but that might cause another </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> issues for release management tooling, though...</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> Besides, during our PTG session we came to the conclusion that we need </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> another step in our process:</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> * "propose DNM changes on every repository by RequirementsFreeze (5 </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> weeks before final release) to check that tests are still passing with </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> the current set of dependencies"</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> Hopefully this will catch broken things well in advance.</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> >> [1]http://lists.openstack.org/pipermail/openstack-discuss/2022-March/027864.html</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> >></p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> >></p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> >> --</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> >></p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> >> Slawek Kaplonski</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> >></p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> >> Principal Software Engineer</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> >></p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> >> Red Hat</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">> </p>
<br /><p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">Thx for all inputs in that topic so far. Here is my summary and conclusion of what was said in that thread:</p>
<br /><ul type="disc">
<li>we shouldn't try automatically switch such "inactive" projects to the independent model, and we should continue bumping versions of such projects every cycle as it makes many things easier,</li>
<li>Release Management team will test projects about 5 weeks before final release - that may help us find broken projects which then can be discussed and eventually marked as deprecated to not release broken code finally,</li>
<li>To check potentially inactive projects TC can:</li>
<ul type="disc">
<li>finish script <a href="https://review.opendev.org/c/openstack/governance/+/810037">https://review.opendev.org/c/openstack/governance/+/810037</a> and use stats generate by that script to periodically check projects' health,</li>
<li>check projects with no merged generated patches, like:</li>
</ul>
</ul>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;"> <span style="background-color:#ffffff;"><a href="https://review.opendev.org/q/topic:reno-yoga+is:open"><span style="font-family:Noto Sans;">https://review.opendev.org/q/topic:reno-yoga+is:open</span></a></span></p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;"> <span style="background-color:#ffffff;"><a href="https://review.opendev.org/q/topic:create-yoga+is:open">https://review.opendev.org/q/topic:create-yoga+is:open</a></span></p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;"> <span style="background-color:#ffffff;"><a href="https://review.opendev.org/q/topic:add-xena-python-jobtemplates+is:open">https://review.opendev.org/q/topic:add-xena-python-jobtemplates+is:open</a></span></p>
<br /><p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">Feel free to add/change anything in that summary if I missed or misunderstood anything there or if You have any idea about other improvements we can do in that area.</p>
<br /><p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">-- </p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">Slawek Kaplonski</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">Principal Software Engineer</p>
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">Red Hat</p>
</body>
</html>