Set up complete CI/CD pipeline
- Set v3.8 as default container
- Add tests on all supported Python versions: 3.6, 3.7, 3.8, 3.9.
Separate distinct jobs for each tasks,
mypyare also in the same job
pylintinto a first stage: beforehand
Install development dependencies into the container 3.8:
- In order to speed-up the jobs
- Replace it with GitLab mirroring feature
- Add support for Python 3.9
Minor Python version in the runners labels doesn't makes sense, Since Py3.5 has been dropped and Py3.9 is getting introduced. Having two test jobs per runner is sharing the load. Use common labels with Silkaj (
pylint installed via
pip on the image causes following import issues.
pylint has to be installed within
There an issue to handle
E1101 top-level dependencies import rules.
pylint, as well as other dev dependencies into poetry virtualenv.
Can we just install
pylint? Not with
poetry install pylint.
Pylint does not found the folder where the dependencies are stored: Poetry virtualenv.
- Specify the root folder or Poetry environment with a pylint configuration, install the virtualenv in the repository.
Job taking too long
The job is taking a bit too long compared to the other jobs in the
check stage, because it's installing the runtime and the dev dependencies. The others takes 1min against 3min, since the used tools (dev deps) are installed on the image.
pylintjob to the
testsstage, since the test jobs are also installing all dependencies.