Bug 1455424

Summary: support Python 3 in beaker-client
Product: [Retired] Beaker Reporter: Dan Callaghan <dcallagh>
Component: generalAssignee: Martin Styk <mastyk>
Status: CLOSED NEXTRELEASE QA Contact: tools-bugs <tools-bugs>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 24CC: bnater, dgregor, greg.hellings, lpol, lzachar, mastyk, mhroncok, mjia
Target Milestone: 27.0Keywords: FutureFeature, Patch
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-05-07 08:46:48 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1455425    
Bug Blocks: 1322027, 1692368    

Description Dan Callaghan 2017-05-25 06:26:47 UTC
Some users have requested that the client parts of Beaker support running in Python 3.

Our client code is still targetting RHEL6+ (meaning Python 2.6+) but it would be reasonable to support Python 2.6+ and 3.0+ from a single code base, for the client parts.

(The Beaker server side is another kettle of fish, it will be stuck on Python 2 so long as there is still TurboGears / CherryPy2 code. So that is out of scope for this bug.)

Some outstanding issues:
* need to fix syntax that is invalid in Python 3
* need to use six.moves for modules that changed names in Python 3
* need to get off python-krbV as it is unmaintained and there is no Python 3 port
* need to figure out a testing strategy

The latter point might be the hardest, as we are currently only running integration tests on RHEL6 and RHEL7. One easy option might be to get the tests running on Fedora, and then adjust the spec so that the beaker-client package on Fedora is built against Python 3 instead of Python 2.

Comment 2 Dan Callaghan 2017-05-25 07:42:05 UTC
Bug 1455425 is for switching python-krbV to something else with Python 3 support. But that is stalled due to deficiencies with krb5 on RHEL6 (details in that other bug).

An alternative would be to port python-krbV to Python 3, but that seems like it might be a big thing to tackle.

Comment 9 greg.hellings 2019-04-10 00:40:15 UTC
Building in Rawhide is now blocked pending this, paricularly in the documentation subtree.

Comment 10 Martin Styk 2019-04-10 06:05:04 UTC
Yes, I'm aware of it.

Getting there but we need to incorporate a bit more changes till 27.0

Comment 11 Martin Styk 2019-05-07 06:48:24 UTC
The build is available on Beaker-project website - https://beaker-project.org/nightlies/develop