Earlier  
Posted Nick Remark
#openstack-nova - 2019-11-19
14:57:13 stephenfin (switching DevStack to Python 3)
14:57:18 gmann i do not prefer nova or any project keep py2 job. but did not thought about min condition on setup.cfg
14:57:21 efried are we objecting to re-adding a py2 job because we're worried about gate resources?
14:57:25 dansmith that's like turning off gating for a bit because we'll be careful
14:57:34 efried ^ this
14:57:56 dansmith stephenfin: I still don't really understand.. gmann is saying we can't switch the default because a lot of jobs don't specify and would break on py3?
14:58:10 mriedem efried: we don't gate on ceph or ironic and yet people care about those right?
14:58:11 sean-k-mooney for what its worth that is why iw as suggesting fixing py3 on centos7 instad of disabling cento7 job untill cento 8 works
14:58:20 gmann yeah but it is deadlock seems and need to tradeoff with either one
14:58:35 stephenfin dansmith: I think so, yeah
14:58:47 efried mriedem: Agreed that we can't test everything in the world. But a minimal canary to make sure devstack doesn't just shit all over itself seems appropriate.
14:58:47 dansmith well, the tradeoff, is, IMHO, what efried said, which is add back a single py2 devstack job
14:59:00 mriedem and when can that be removed?
14:59:07 dansmith mriedem: when the default switches
14:59:09 mriedem when the tc fairy shows up in january to tell us we're ok?
14:59:11 efried when devstack is py3 by default and we can do the minimum thing.
14:59:23 dansmith mriedem: I don't care about the date, I care about the default
14:59:30 stephenfin Can we just make devstack py3 by default?
14:59:32 efried ("the minimum thing" => restore the py3 minimum in setup.cfg)
15:00:02 stephenfin We know there's going to be some degree of pain here. By reverting anything in nova, we're kicking the can down the road
15:00:05 efried stephenfin: That's mriedem's patch, yes? I rechecked that a bit ago to see if it works yet. If so, maybe we can just pull the trigger.
15:00:05 mriedem then just efried and dansmith should approve ianw's revert
15:00:07 gmann default switch was planned for ~Jan
15:00:21 gmann ok, let's move devstack to py3 and then if anyone need py2 testing (only lib and testing tools) can explicitly mention the py2 need
15:00:23 efried though the predecessor also would need to go.
15:00:26 stephenfin Switching to Python 3 by default is at least forward-looking pain
15:00:29 dansmith gmann: right so if the default flip is coming, I don't see what the big deal is
15:00:32 gmann except swift everyone has to switch to py3-only in ussuri
15:00:45 mriedem dansmith: that devstack patch of mine has been on top of another patch that has been around since april
15:00:49 stephenfin then lets do that now
15:01:03 dansmith stephenfin: I would agree except I don't know how many things will insta-fail on projects with few people working on them
15:01:04 gmann i have patches upnfor all the projects (except clieent, testing tool and lib) so project can merge thsoe
15:01:13 dansmith mriedem: I know
15:01:23 dansmith mriedem: I'm not a py3 bigot, so I'm really in no rush :)
15:01:34 stephenfin dansmith: those projects are going to insta-fail at some point though
15:01:59 dansmith stephenfin: yep, so if the TC wants to schedule that, and it's in Jan, I would be fine waiting and moving then as long as it happens
15:02:14 dansmith but, also fine now, I just don't want the disjoint default.. like I said, the date doesn't matter to me
15:02:57 gmann dansmith: but it can be blocked other projects too and two times effort to get rid of py2. so i am ok to move devstack first
15:03:23 mriedem dansmith: then just approve this https://review.opendev.org/#/c/694891/
15:03:55 gmann because if nova or any other project say min version is py3 then it is fair because reno said the same.
15:04:22 dansmith mriedem: I'm trying to reach consensus like everyone else, not force-merge anything
15:04:50 dansmith if gmann is going to flip the devstack default, then we don't need to do anything, AFAICT
15:05:02 stephenfin yup
15:05:19 stephenfin gmann: just so I'm 100% clear, what was the rationale for the proposed January switchover?
15:05:35 stephenfin I missed whatever email discussed that so a link is fine :)
15:05:36 dansmith January is when the actual upstream support stops, AFAIK
15:05:53 dansmith so I imagine it's aligned there so that the TC's deadline has weight
15:05:56 gmann stephenfin: to keep testing py2 on client lib and lib, testing tool which were planned to drop py2 in jan
15:06:31 gmann plan is like, consumers drop py2 first which is openstack services and then lib or testing tool
15:06:34 sean-k-mooney gmann: it was planned for m2 in febuary
15:06:38 stephenfin We should probably switch over sooner than that then
15:06:39 sean-k-mooney well by m2
15:07:02 stephenfin We need to keep clients and libraries on python 2 for longer to let the services switch everything over
15:07:05 dansmith honestly, switching the default in devstack at m2 seems crazy late to me
15:07:08 dansmith just for our cycle
15:07:25 stephenfin so we should be switching devstack now to let the services fix whatever they need to fix
15:07:34 stephenfin IMO, of course
15:07:36 dansmith that makes more sense to me for sure
15:07:38 dansmith break early
15:07:40 gmann stephenfin: yeah and all services has to switch before m-2
15:07:52 stephenfin dansmith: we also have Xmas to worry about
15:07:53 gmann +1.
15:08:00 dansmith stephenfin: not nova's X-mas! :P
15:08:09 dansmith but yeah I get that for sure
15:08:18 dansmith so, just tobe clear,
15:08:40 dansmith even if we push the devstack default, we need the partial revert so that py2-only projects can still install nova in their jobs
15:08:54 sean-k-mooney dansmith: yes
15:08:58 openstackgerrit Mark Goddard proposed openstack/nova master: Add functional regression test for bug 1853009 https://review.opendev.org/695012
15:08:58 openstack bug 1853009 in OpenStack Compute (nova) "Ironic node rebalance race can lead to missing compute nodes in DB" [Undecided,In progress] https://launchpad.net/bugs/1853009 - Assigned to Mark Goddard (mgoddard)
15:08:58 dansmith so we could push the default in devstack now, then revert our can-use-py2 part at m2 as the hard deadline yeah?
15:09:12 gmann stephenfin: are you rebasing the mriedem patch and remove neutron-grenade job also in same patch to pass the gate
15:09:14 stephenfin sean-k-mooney: why?
15:09:43 dansmith stephenfin: so that trove (example) can still run py2 devstack jobs with nova
15:09:51 sean-k-mooney why? so that if neutron need to keep a job on py2 for a day or two to fix it they can
15:09:57 dansmith right
15:10:02 gmann dansmith: they has to move as soon as any dependencies fail their gate
15:10:42 stephenfin But unless they're setting USE_PYTHON3=False in jobs, they'll inherit the default (now python3), no?
15:10:44 dansmith yeah
15:10:45 dansmith that's my point, if nova can't run on py2 anymore (default or not) then they can't run jobs
15:10:52 slaweq sean-k-mooney: what py2 job in neutron You are talking about?
15:11:03 dansmith stephenfin: right, I'm sayingsome project that needs another month to be able to run devstack in default py3
15:11:12 stephenfin ohhhh
15:11:15 stephenfin gotcha
15:11:20 dansmith if we don't revert the minimum change, they physically can't install nova in unsupported py2
15:11:23 sean-k-mooney slaweq: none it was just an example of a big project with many jobs that often need nova in them
15:11:26 stephenfin okay
15:11:35 slaweq sean-k-mooney: ahh, ok :)
15:11:37 gmann for client lib which will happen later make sense to keep nova install-able on py2 , for service not
15:11:46 stephenfin then I'm also onboard with that
15:12:05 dansmith stephenfin: that all hinges on gmann being willing to pull the trigger
15:12:20 sean-k-mooney by the way os-vif is currently broken as we have not swaped all the jobs to python 3
15:12:22 stephenfin so, revert the change to nova, merge the Python 3-ification patch to DevStack, wait a month and re-revert that change to nova
15:12:39 dansmith stephenfin: just the half-revert
15:12:40 sean-k-mooney we can trivially but we need to wait as a lib project
15:12:42 gmann revert only setup.cfg and req right ?
15:12:51 gmann yeah what dansmith mentioned
15:13:04 dansmith stephenfin: revert the min, default devstack to py3, later un-revert the minimum
15:13:12 gmann +1
15:13:31 stephenfin what about your concerns that we could accidentally break Python2 support in that time?
15:13:36 stephenfin don't they still hold?

Earlier   Later