Earlier  
Posted Nick Remark
#openstack-nova - 2023-01-09
09:47:38 gibi__ the problem is that it then ignores the py310 part of the target and runs with whathever python3 interpreter I have
09:47:48 gibi__ so functionalpy39 runs with the same python3.10 I have installed
09:49:53 sahid o/ any chance to get some reviews on https://review.opendev.org/c/openstack/nova/+/858383 ?
09:50:18 sahid perhpas gibi__ when you have a moment :D ^
09:51:04 gibi__ bauzas: so I do believe that the generative env feature is broken somehwo
09:51:07 gibi__ stephenfin: ^^
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 gibi__ OK, I can move everything to install_command
12:09:51 sean-k-mooney this looks a littel differnt then normal actully
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 sean-k-mooney ok that is why the os-vif packages were not being installed

Earlier   Later