<div dir="ltr">Thank you Dmitry for very detailed plan and risks assessment.<div>Do we want to run swarm against custom iso with centos7 on Thu evening to measure level of regression? I remember that we were considering this approach.</div><div><br></div><div>Regards,</div><div>Andrey Maximov</div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Dec 2, 2015 at 12:48 AM, Dmitry Borodaenko <span dir="ltr"><<a href="mailto:dborodaenko@mirantis.com" target="_blank">dborodaenko@mirantis.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">With bit more details, I hope this covers all the risks and decision<br>
points now.<br>
<br>
First of all, current list of outstanding commits:<br>
<a href="https://etherpad.openstack.org/p/fuel_on_centos7" rel="noreferrer" target="_blank">https://etherpad.openstack.org/p/fuel_on_centos7</a><br>
<br>
The above list has two sections: backwards compatible changes that can<br>
be merged one at a time even if the rest of CentOS7 support isn't<br>
merged, and backwards incompatible changes that break support for<br>
CentOS6 and must be merged (and, if needed, reverted) all at once.<br>
<br>
Decision point 1: FFE for CentOS7<br>
<br>
CentOS7 support cannot be fully merged on Dec 2, so it misses FF. Can it<br>
be allowed a Feature Freeze Exception? So far, the disruption of the<br>
Fuel development process implied by the proposed merge plan is<br>
acceptable, if anything goes wrong and we become unable to have a stable<br>
ISO with merged CentOS7 support on Monday, December 7, the FFE will be<br>
revoked.<br>
<br>
Wed, Dec 2: Merge party<br>
<br>
Merge party before 8.0 FF, we should do our best to merge all remaining<br>
feature commits before end of day (including backwards compatible<br>
CentOS7 support commits), without breaking the build too much.<br>
<br>
At the end of the day we'll start a swarm test over the result of the<br>
merge party, and we expect QA to analyze and summarize the results by<br>
17:00 MSK (6:00 PST) on Thu Dec 3.<br>
<br>
Risk 1: Merge party breaks the build<br>
<br>
If there is a large regression in swarm pass percentage, we won't be<br>
able to afford a merge freeze which is necessary to merge CentOS7<br>
support, we'll have to be merging bugfixes until swarm test pass rate is<br>
back around 70%.<br>
<br>
Risk 2: More features get FFE<br>
<br>
If some essential 8.0 features are not completely merged by end of day<br>
Wed Dec 2 and are granted FFE, merging the remaining commits can<br>
interfere with merging CentOS7 support, not just from merge conflicts<br>
perspective, but also invalidating swarm results and making it<br>
practically impossible to bisect and attribute potential regressions.<br>
<br>
Thu, Dec 3: Start merge freeze for CentOS7<br>
<br>
Decision point 2: Other FFEs<br>
<br>
In the morning MSK time, we will assess Risk 2 and decide what to do<br>
with the other FFEs. The options are: integrate remaining commits into<br>
CentOS7 merge plan, block remaining commits until Monday, revoke CentOS7<br>
FFE.<br>
<br>
If the decision is to go ahead with CentOS7 merge, we announce merge<br>
freeze for all git repositories that go into Fuel ISO, and spend the<br>
rest of the day rebasing and cleaning up the rest of the CentOS7 commits<br>
to make sure they're all in mergeable state by the end of the day. The<br>
outcome of this work must be a custom ISO image with all remaining<br>
commits, with additional requirement that it must not use Jenkins job<br>
parameters (only patches to fuel-main that change default repository<br>
paths) to specify all required package repositories. This will validate<br>
the proposed fuel-main patches and ensure that no unmerged package<br>
changes are used to produce the ISO.<br>
<br>
Decision point 3: Swarm pass rate<br>
<br>
After swarm results from Wed are available, we will assess the Risk 1.<br>
If the pass rate regression is significant, CentOS7 FFE is revoked and<br>
merge freeze is lifted. If regression is acceptable, we proceed with<br>
merging remaining CentOS7 commmits through Thu Dec 3 and Fri Dec 4.<br>
<br>
Fri, Dec 4: Merge and test CentOS7<br>
<br>
The team will have until 17:00 MSK to produce a non-custom ISO that<br>
passes BVT and can be run through swarm.<br>
<br>
Sat, Dec 5: Assess CentOS7 swarm and bugfix<br>
<br>
First of all, someone from CI and QA teams should commit to monitoring<br>
the CentOS7 swarm run and report the results as soon as possible. Based<br>
on the results (which once again must be available by 17:00 MSK), we can<br>
decide on the final step of the plan.<br>
<br>
Decision point 4: Keep or revert<br>
<br>
If CentOS7 based swarm shows significant regression, we have to spend<br>
the rest of the weekend including Sunday reverting all CentOS7 commits<br>
that were merged during merge freeze. Once revert is completed, we will<br>
lift the merge freeze.<br>
<br>
If the regression is acceptable, we lift the merge freeze straight away<br>
and proceed with bugfixing as usual. At this point CI team will need to<br>
update the Fuel ISO used for deployment tests in our CI to this same<br>
ISO.<br>
<br>
One way or the other, we will be able to resume bugfixing on Monday<br>
morning MSK time, and will have lost 2 business days (Thu-Fri) during<br>
which we won't be able to merge bugfixes. In addition to that, someone<br>
from QA and everyone from CentOS7 support team has to work on Saturday,<br>
and someone from CI will have to work a few hours on Sunday.<br>
<span class="HOEnZb"><font color="#888888"><br>
--<br>
Dmitry Borodaenko<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
<br>
On Tue, Dec 01, 2015 at 05:58:42PM +0300, Dmitry Teselkin wrote:<br>
> Hello,<br>
><br>
> We're almost got green BVT on custom CentOS7 ISO and it seems that it's<br>
> the time to discuss the plan how this feature could be merged.<br>
><br>
> This is not the only one feature that is in a queue. Unfortunately,<br>
> almost any other feature will be broken if merged after CentOS7, so it<br>
> was decided to merge our changes last.<br>
><br>
> This is not an official announcement, rather a notification letter to<br>
> start a discussion and find any objections.<br>
><br>
> So the plan is:<br>
><br>
> * merge all features that are going to be merged before Thusday, Dec 3<br>
> * call for merge freeze starting at Dec 3, due Dec 7<br>
> * rebase all CentOS7-related pathsets and resolve any conflicts with<br>
>   merged code (Dec 3)<br>
> * build custom ISO, pass BVT (and other tests) (Dec 3)<br>
> * merge all CentOS7-related patchsets at once (Dec 4)<br>
> * build an ISO and pass BVT again (Dec 4)<br>
> * run additional test during weekend (Dec 5, 6) to be sure that ISO<br>
>   good enough<br>
><br>
> According to this plan on Monday, Dec 7 we should either get CentOS7<br>
> based ISO, or revert all incompatible changes.<br>
><br>
> --<br>
> Thanks,<br>
> Dmitry Teselkin<br>
><br>
><br>
> __________________________________________________________________________<br>
> OpenStack Development Mailing List (not for usage questions)<br>
> Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" rel="noreferrer" target="_blank">OpenStack-dev-request@lists.openstack.org?subject:unsubscribe</a><br>
> <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" rel="noreferrer" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
<br>
__________________________________________________________________________<br>
OpenStack Development Mailing List (not for usage questions)<br>
Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" rel="noreferrer" target="_blank">OpenStack-dev-request@lists.openstack.org?subject:unsubscribe</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" rel="noreferrer" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
</div></div></blockquote></div><br></div>