Skip to content
Snippets Groups Projects

F pipeline python versions

Merged Florian Spreckelsen requested to merge f-pipeline-python-versions into dev
3 unresolved threads

Summary

For #124 (closed). Adds unittest support for all supported Python versions.

Focus

Contrary to our initial plan, I decided to abandon pyenv since it is a pain in the ass to be run within a debian-based pipeline image and rather use the official Python 3.X docker images. These also have their problems with tox (or rather, pip within tox, see, e.g. https://gitlab.indiscale.com/caosdb/src/caosdb-pylib/-/jobs/141105), so plain pytest needs to be used instead.

Test Environment

No manual testing, just verify that the unittest_py3.X jobs actually run on the correct Python version (take a look at the final pipeline output.)

Check List for the Author

Please, prepare your MR for a review. Be sure to write a summary and a focus and create gitlab comments for the reviewer. They should guide the reviewer through the changes, explain your changes and also point out open questions. For further good practices have a look at our review guidelines

  • All automated tests pass
  • Reference related issues
  • Up-to-date CHANGELOG.md (or not necessary)
  • Annotations in code (Gitlab comments)
    • Intent of new code
    • Problems with old code
    • Why this implementation?

Check List for the Reviewer

  • I understand the intent of this MR
  • All automated tests pass
  • Up-to-date CHANGELOG.md (or not necessary)
  • The test environment setup works and the intended behavior is reproducible in the test environment
  • In-code documentation and comments are up-to-date.
  • Check: Are there specifications? Are they satisfied?

For further good practices have a look at our review guidelines.

Edited by Florian Spreckelsen

Merge request reports

Loading
Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
57 unittest:
57 unittest_py3.8:
58 tags: [ docker ]
59 stage: test
60 needs: [ ]
61 image: python:3.8
62 script: &python_test_script
63 # Python docker has problems with tox and pip so use plain pytest here
64 - touch ~/.pycaosdb.ini
65 - pip install nose pytest pytest-cov python-dateutil jsonschema==4.0.1
66 - pip install .
67 - python -m pytest unittests
68
69 # This needs to be changed once Python 3.9 isn't the standard Python in Debian
70 # anymore.
71 unittest_py3.9:
  • 54 54 allow_failure: true
    55 55
    56 56 # run unit tests
    57 unittest:
    57 unittest_py3.8:
    58 tags: [ docker ]
    59 stage: test
    60 needs: [ ]
    61 image: python:3.8
    62 script: &python_test_script
    63 # Python docker has problems with tox and pip so use plain pytest here
    64 - touch ~/.pycaosdb.ini
    65 - pip install nose pytest pytest-cov python-dateutil jsonschema==4.0.1
    66 - pip install .
    67 - python -m pytest unittests
  • 62 76 - touch ~/.pycaosdb.ini
    63 77 - make unittest
    64 78
    79
    80 unittest_py3.10:
    81 tags: [ docker ]
    82 stage: test
    83 needs: [ ]
    84 image: python:3.10
    85 script: *python_test_script
  • Florian Spreckelsen marked the checklist item All automated tests pass as completed

    marked the checklist item All automated tests pass as completed

  • Florian Spreckelsen marked the checklist item Reference related issues as completed

    marked the checklist item Reference related issues as completed

  • Florian Spreckelsen marked the checklist item Up-to-date CHANGELOG.md (or not necessary) as completed

    marked the checklist item Up-to-date CHANGELOG.md (or not necessary) as completed

  • Florian Spreckelsen marked the checklist item Annotations in code (Gitlab comments) as completed

    marked the checklist item Annotations in code (Gitlab comments) as completed

  • Florian Spreckelsen requested review from @henrik

    requested review from @henrik

  • mentioned in commit f05dca21

  • Please register or sign in to reply
    Loading