| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2023-01-09 | |||
| 09:51:26 | bauzas | gibi__: yeah, that's my guess | |
| 09:51:35 | gibi__ | sahid: ack, I'm not sure when I will have that moment, sorry | |
| 09:51:48 | bauzas | gibi__: tox can't guess which python interpreter to use | |
| 09:52:10 | bauzas | that said, it looks a large regression | |
| 09:53:17 | bauzas | gibi__: ^ | |
| 09:57:03 | opendevreview | Balazs Gibizer proposed openstack/nova master: Define basepython for functional targets https://review.opendev.org/c/openstack/nova/+/869545 | |
| 09:57:17 | gibi__ | bauzas: ^^ this seems to work locally | |
| 09:58:54 | bauzas | theorically, this shouldn't be needed | |
| 09:59:00 | bauzas | https://tox.wiki/en/4.2.6/config.html#base_python | |
| 09:59:58 | gibi__ | yeah, it worked before | |
| 10:00:01 | bauzas | unfortunately the tox4 docs isn't that explaining how to autogenerate venvs with py versioning like tox3 docs do https://tox.wiki/en/3.4.0/config.html#generating-environments-conditional-settings | |
| 10:00:32 | gibi__ | I will open an issue for tox maybe the devs knows more | |
| 10:01:04 | bauzas | "tox provides a number of default factors corresponding to Python interpreter versions. The conditional setting above will lead to either python3.6 or python2.7 used as base python, e.g. python3.6 is selected if current environment contains py36 factor." | |
| 10:01:27 | bauzas | so I guess the default factors no longer work | |
| 10:09:59 | gibi__ | after some more trials it is more like basepython = python3 and -py310 factor creates a conflict but we have ignore_basepython_conflict to supress that and that lead to no interpreter found | |
| 10:20:43 | gibi__ | bauzas, gmann, stephenfin: opened https://github.com/tox-dev/tox/issues/2838 | |
| 10:21:23 | bauzas | gibi__: we could remove basepython IMHO | |
| 10:23:55 | gibi__ | we could if we assume no env will have python2.7 as a default interpreter installed | |
| 10:37:46 | stephenfin | yeah, be can/should drop basepython at this point | |
| 10:37:49 | stephenfin | *we | |
| 10:39:41 | stephenfin | gibi: replied on the tox bug also | |
| 10:40:18 | gibi__ | stephenfin: I tried in tox 3.28 and I did not need ingnore_base_python_conflict to make it work | |
| 10:40:44 | gibi__ | stephenfin: you can simply remova that from nova's tox.ini and it work in tox 3.28 for me locally | |
| 10:42:42 | gibi__ | stephenfin: anyhow so you suggest to just remove basepython = python3 and assume people's machine has python3 by default | |
| 10:43:03 | gibi__ | (which could be a fair assumption having python2.7 in EOL) | |
| 10:43:32 | stephenfin | I think that's a reasonable workaround, yes | |
| 10:44:30 | gibi__ | OK, I will change https://review.opendev.org/c/openstack/nova/+/869545 to drop basepython instead of defining it for each generative env | |
| 10:45:15 | gibi__ | and then I can also try to drop ignore_basepython_conflict | |
| 10:45:44 | stephenfin | oh, you can do the two in one go. ignore_basepython_conflict is only needed if `basepython` is defined (which it won't be here) | |
| 10:46:01 | gibi__ | OK | |
| 10:50:28 | sean-k-mooney | bauzas: yes you can use tox -e py3|functional | |
| 10:50:42 | sean-k-mooney | those will use your defalt python | |
| 10:51:20 | sean-k-mooney | we only set basepython to cater for python2 vs python3 | |
| 10:51:26 | sean-k-mooney | so yes we can drop it now | |
| 10:53:47 | opendevreview | Balazs Gibizer proposed openstack/nova master: Remove basepython def from tox.ini https://review.opendev.org/c/openstack/nova/+/869545 | |
| 10:53:54 | gibi__ | stephenfin, bauzas: ^^ | |
| 10:54:04 | sean-k-mooney | gibi__: so regarding https://review.opendev.org/c/openstack/os-vif/+/869500 that now works but we need to squash it into your patch | |
| 10:54:23 | sean-k-mooney | or in your patch you can disable the functional jobs and we can re enable it in this one | |
| 10:54:29 | sean-k-mooney | gibi__: any prefernce | |
| 10:56:36 | gibi__ | I need to update that tox patch to remove basepython and ignore_basepython_conflict, I can do a squash at the same time | |
| 10:57:00 | darkhorse | artom: If you remember our discussion on unshelving pci instance, I tried to boot from image that is related to the unshelved instance but failed. I don't see an image created when I shelve an instance. I tried openstack images list and also checked in the glace>images table but nothing is created when I shelve an instance. | |
| 10:57:41 | gibi__ | sean-k-mooney: but I need to have lunch first | |
| 10:59:13 | sean-k-mooney | gibi__: cool works for me enjoy your lunch | |
| 11:00:43 | gibi__ | thanks | |
| 11:31:40 | opendevreview | Balazs Gibizer proposed openstack/os-vif master: Make tox.ini tox 4.0.0 compatible https://review.opendev.org/c/openstack/os-vif/+/868420 | |
| 11:31:51 | gibi__ | sean-k-mooney: ^^ fix with the squash | |
| 11:40:56 | sean-k-mooney | gibi__: thanks +2 although ignoring 2 +2s thing for a sec given i wrote part of this i want someone else to +w anyway | |
| 11:42:51 | opendevreview | sean mooney proposed openstack/os-vif master: Update gate jobs as per the 2023.1 cycle testing runtime https://review.opendev.org/c/openstack/os-vif/+/861468 | |
| 11:51:35 | gibi__ | stephenfin: if you have a sec then here https://review.opendev.org/c/openstack/placement/+/868418 I think we have some disagreements | |
| 11:56:32 | sean-k-mooney | gibi__: the convention we had for the deps is generally to inherit and extend | |
| 11:57:00 | sean-k-mooney | like this | |
| 11:57:01 | sean-k-mooney | deps = | |
| 11:57:03 | sean-k-mooney | {[testenv]deps} | |
| 11:57:05 | sean-k-mooney | -r{toxinidir}/doc/requirements.txt | |
| 11:57:16 | sean-k-mooney | i think that is what stephen was sugessing but not sure | |
| 11:57:37 | sean-k-mooney | to avoid repeatign | |
| 11:57:39 | sean-k-mooney | -c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master} | |
| 11:57:41 | sean-k-mooney | -r{toxinidir}/requirements.txt | |
| 12:01:06 | gibi__ | sean-k-mooney: extending deps alone is not enough, it seems deps are not properly applied during the editable install of the package | |
| 12:01:28 | gibi__ | basically the editable install makes the deps unconstrained | |
| 12:01:40 | gibi__ | (from above) | |
| 12:01:55 | sean-k-mooney | really thats not what i was expecting | |
| 12:02:12 | sean-k-mooney | i guess that is a delete in the skipsdist behavior | |
| 12:02:24 | sean-k-mooney | by not skiping we build a wheel and install form that | |
| 12:02:49 | stephenfin | gibi__: looking | |
| 12:03:01 | sean-k-mooney | presumable its the build step that might be the issue? | |
| 12:04:15 | stephenfin | oh, interesting | |
| 12:06:13 | gibi__ | sean-k-mooney: yes it could be related to removing skipdist | |
| 12:06:19 | sean-k-mooney | use_develop with skipsdist=false seams to not be doing an editiable install it instead ensure that a install of the current content of the working dir is done via a wheel i think | |
| 12:06:37 | stephenfin | hmm, so in theory, either way should be okay. If we're separately listing 'requirements.txt' in our 'deps' setting then we'll have installed those (with constraints) first. That's because we've removed skipsdist alright | |
| 12:07:26 | sean-k-mooney | we coudl just move the -c line to the deps of testenv | |
| 12:07:34 | sean-k-mooney | then do {[testenv]deps} | |
| 12:07:36 | stephenfin | But yeah, overriding 'install_command' is certainly less likely to cause issue | |
| 12:07:42 | sean-k-mooney | anytime we are modifing the deps later | |
| 12:08:04 | stephenfin | sean-k-mooney: what gibi's saying though is that the package itself (i.e. placement or nova) is installed without constraints | |
| 12:08:34 | stephenfin | so we're relying on us having already installed the deps with constraints and hoping (I guess) that tox doesn't decide to reinstall them without constraints when installing the package | |
| 12:08:36 | gibi__ | stephenfin: we install our deps with constraints yes, but then we install the placement package's deps again without constriants | |
| 12:08:54 | stephenfin | so best to override the install_command | |
| 12:09:02 | sean-k-mooney | ok but woudl we not | |
| 12:09:13 | sean-k-mooney | ya would we not need to change that ^ | |
| 12:09:22 | stephenfin | we should drop '-rrequirements.txt' from 'deps' too since it's now unnecessary and potentially confusing | |
| 12:09:51 | sean-k-mooney | this looks a littel differnt then normal actully | |
| 12:09:51 | gibi__ | OK, I can move everything to install_command | |
| 12:10:00 | gibi__ | and drop deps | |
| 12:10:36 | sean-k-mooney | https://github.com/openstack/os-vif/blob/master/tox.ini | |
| 12:10:38 | stephenfin | I'd keep 'deps' but only for test-requirements.txt and doc/requirements.txt | |
| 12:10:49 | sean-k-mooney | if we compare it to osvif we droped the install_command a while ago | |
| 12:11:09 | stephenfin | sean-k-mooney: you've got 'skipsdist = true' though | |
| 12:11:23 | sean-k-mooney | true | |
| 12:11:25 | stephenfin | so it won't actually install os-vif | |
| 12:11:30 | sean-k-mooney | but for nova we doint | |
| 12:11:36 | sean-k-mooney | https://github.com/openstack/nova/blob/master/tox.ini | |
| 12:11:40 | stephenfin | Yup, so it will install nova | |
| 12:12:20 | stephenfin | os-vif is working because Python adds $PWD to $PYTHONPATH | |
| 12:12:20 | sean-k-mooney | ok that is why the os-vif packages were not being installed | |
| 12:12:29 | stephenfin | or rather, was | |
| 12:12:39 | stephenfin | but I think tox 4 might have changed that, idk | |
| 12:12:43 | sean-k-mooney | we could have actully kept the two commits sepeate instaed fo squashihng them | |
| 12:13:27 | sean-k-mooney | stephenfin: i had to rebase this on top of gibis tox4 change https://review.opendev.org/c/openstack/os-vif/+/869500/2 because the os-vif package was not found | |
| 12:13:56 | sean-k-mooney | this combined one works https://review.opendev.org/c/openstack/os-vif/+/868420/3 | |