[dev][goal][python3][qa][devstack][ptl] changing devstack's python 3 behavior

Slawomir Kaplonski skaplons at redhat.com
Wed Jan 9 21:11:29 UTC 2019


Thx for clarification Doug.

Slawek Kaplonski
Senior software engineer
Red Hat

> Wiadomość napisana przez Doug Hellmann <doug at doughellmann.com> w dniu 09.01.2019, o godz. 21:55:
> Luigi Toscano <ltoscano at redhat.com> writes:
>> On Wednesday, 9 January 2019 20:57:09 CET Doug Hellmann wrote:
>>> Doug Hellmann <doug at doughellmann.com> writes:
>>>> Doug Hellmann <doug at 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).
>>>>> [1] https://review.openstack.org/#/c/622415/
>>>> 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

More information about the openstack-discuss mailing list