Hi, Thx for clarification Doug. — Slawek Kaplonski Senior software engineer Red Hat
Wiadomość napisana przez Doug Hellmann <doug@doughellmann.com> w dniu 09.01.2019, o godz. 21:55:
Luigi Toscano <ltoscano@redhat.com> writes:
On Wednesday, 9 January 2019 20:57:09 CET Doug Hellmann wrote:
Doug Hellmann <doug@doughellmann.com> writes:
Doug Hellmann <doug@doughellmann.com> writes:
Today devstack requires each project to explicitly indicate that it can be installed under python 3, even when devstack itself is running with python 3 enabled.
As part of the python3-first goal, I have proposed a change to devstack to modify that behavior [1]. With the change in place, when devstack runs with python3 enabled all services are installed under python 3, unless explicitly listed as not supporting python 3.
If your project has a devstack plugin or runs integration or functional test jobs that use devstack, please test your project with the patch (you can submit a trivial change to your project and use Depends-On to pull in the devstack change).
We have had a few +1 votes on the patch above with comments that indicate at least a couple of projects have taken the time to test and verify that things won't break for them with the change.
Are we ready to proceed with merging the change?
The patch mentioned above that changes the default version of Python in devstack to 3 by default has merged. If this triggers a failure in your devstack-based jobs, you can use the disable_python3_package function to add your package to the list *not* installed using Python 3 until the fixes are available.
Isn't the purpose of the patch to make sure that all services are installed using Python 3 when Python 3 is enabled, but that we still need to set USE_PYTHON3=True?
Ciao -- Luigi
It is still necessary to set USE_PYTHON3=True in the job. The logic enabled by that flag used to *also* require each service to individually enable python 3 testing. Now that is no longer true, and services must explicitly *disable* python 3 if it is not supported.
The USE_PYTHON3 flag allows us to have 2 jobs, with devstack running under python 2 and python 3. When we drop python 2 support, we can drop the USE_PYTHON3 flag from devstack and always run under python 3. (We could do that before we drop support for 2, but we would have to modify a lot of job configurations and I'm not sure it buys us much given the amount of effort involved there.)
-- Doug