Implement python3 compatibility in fuel-qa tests
Currently fuel-qa tests is strictly python 2.7 oriented.
Switch to corr support with stable version of python (3.4 for now) allows to transparent switch on newer version, when community will make this decision.
Implementation way:
1. Refactor whole branch to reduce code inspection warnings, remove strict Python 2.x code (mostly assert re-raise out of except)
2. Enable six packet usage for incompatible API (this packed is already used at python-fuelclient and other packages).
3. Enable code compatibility checks on CI for fuel-qa.
4. Rework python-devops for six usage.
3. Enable code compatibility checks on CI for python-devops.
Blueprint information
- Status:
- Started
- Approver:
- Nastya Urlapova
- Priority:
- Medium
- Drafter:
- Aleksei Stepanov
- Direction:
- Approved
- Assignee:
- Aleksei Stepanov
- Definition:
- Review
- Series goal:
- Accepted for newton
- Implementation:
- Started
- Milestone target:
- 10.0
- Started by
- Aleksei Stepanov
- Completed by
Related branches
Related bugs
Sprints
Whiteboard
Gerrit topic: https:/
Addressed by: https:/
Python3 code compatibility: Stage1
Addressed by: https:/
Python3 code compatibility: Stage2
Addressed by: https:/
Python3 code compatibility: Stage2.1 - iterators support
Addressed by: https:/
Python3 code compatibility: tox.ini checks v1
Gerrit topic: https:/
Addressed by: https:/
Python3 code compatibility: checks v2
Addressed by: https:/
Python3 code compatibility: division, filter, round
Addressed by: https:/
Python3 code compatibility: filter, map, zip
Addressed by: https:/
Replace ipaddr by netaddr
Addressed by: https:/
Replace ipaddr by netaddr
Addressed by: https:/
Pylint: python3 critical issues
Addressed by: https:/
Pylint: python3 critical issues
Addressed by: https:/
Add tox targets
Addressed by: https:/
Fix trivial issues during py3 work
Addressed by: https:/
Rewrite ntp helper for readability
Addressed by: https:/
Replace moved libraries by six.moves....
Addressed by: https:/
Deprecate protected methods
Addressed by: https:/
Replace ipaddr by netaddr
Gerrit topic: https:/
Gerrit topic: https:/
Addressed by: https:/
Django 1.9
Addressed by: https:/
xml.etree in oppisite to xmlbuilder
Addressed by: https:/
Enable py34 checker
Addressed by: https:/
Migrate from xmlbuilder to custom builder based on xml.etree
Addressed by: https:/
Deprecate protected methods
Addressed by: https:/
UTF8 for ssh
Addressed by: https:/
UTF8 for ssh
Addressed by: https:/
Migrate from xmlbuilder to custom builder based on xml.etree
Addressed by: https:/
Django 1.8
Work Items
Work items:
code refactor for fuel-qa: INPROGRESS
enable six for fuel-qa: DONE
enable code compatibility check for fuel-qa on ci: TODO
enable six for fuel-devops: DONE
enable code compatibility check for fuel-devops on ci: DONE
migrate on Django > 1.7: DONE
enable vote for fuel-devops py checker: DONE