Upgrade python from 3.5 to 3.8
What does this MR do?
This MR addresses an issue raised in gitlab-org/gitlab#35629 (comment 267693147) where a python dependency has a minimum python version constraint set to
3.6. The license management image runs
ubuntu 16:04 which does not include a python version greater than 3.5 without importing third party repositories.
This MR installs the asdf version manager to manage different versions of python. By default the latest python 3.8, 2.7 versions are installed. Also, python 3.5.1 is installed to support backwards compatibility with
LM_PYTHON_VERSION=3.5.1. By default
pip is installed for each version of python that is installed.
This change allows users to specify the version of python that they wish to use. If it's not already bundled in the default image, then the specified version of python will be downloaded and installed on-demand. This operates in the same manner as RVM.
What are the relevant issue numbers?
Does this MR meet the acceptance criteria?
- Changelog entry added
- [-] Documentation created/updated for GitLab EE, if necessary
- [-] Documentation created/updated for this project, if necessary
- [-] Documentation reviewed by technical writer or follow-up review issue created
- Tests added for this feature/bug
- [-] Job definition updated, if necessary
- Conforms to the code review guidelines
- [-] Conforms to the Go guidelines
- Security reports checked/validated by reviewer