On 2020-09-11 13:50:57 +0200 (+0200), Michał Dulko wrote: [...]
We're in a bit of a pickle here. So with kuryr-kubernetes we aim to keep lower-constraints on the versions that can be found in CentOS/RHEL8 and seems like cffi 1.11.5 won't compile with Python 3.8. What should we do here? Is such assumption even possible given broader OpenStack assumptions? [...]
To rehash and summarize my opinion from our lengthy IRC discussion in the #openstack-infra channel yesterday, I agree that it makes sense to run lower-constraints jobs on the lowest Python interpreter release listed in our tested runtimes for that cycle. However, you also have to take into account the platform(s) which cause that interpreter version to be included. Basically if we're going to standardize Python 3.6 jobs of any kind in Victoria those should be running on CentOS 8 (which is in our tested runtimes for Victoria and why we included Python 3.6 at all), *not* on Ubuntu Bionic (which is not included in our tested runtimes for Victoria). Otherwise we're stuck supporting ubuntu-bionic images for testing stable/victoria well into the future even though we didn't technically list it as a target platform. This gets more complicated though. We've, as a community overall, tried repeatedly to pretend we're not testing specific platforms, and instead just testing representative Python versions. Except we don't actually test with real Python versions we test with the patched Python interpreters shipped in distros. So our job names pretend they're Python version specific for the most part, when to actually meet the intent of our tested runtimes we really do need distro-specific jobs. We test Python 3.6 for stable/ussuri changes because Ubuntu Bionic is a tested runtime platform for Ussuri and that's the default Python 3 it ships, but Python 3.6 is listed in Victoria for the benefit of CentOS 8 not Ubuntu Bionic, so we need a different py36 job on each branch, running on different distros. -- Jeremy Stanley