Skip to content
Snippets Groups Projects
Commit df3bf735 authored by Hock, Martin's avatar Hock, Martin
Browse files

Merge branch 'fix/ci-cd' into 'dev'

Fix/ci cd

See merge request !40
parents abc4ea45 506cabd6
No related branches found
No related tags found
No related merge requests found
Pipeline #839989 waiting for manual action
image: python:latest
image: python:3.10
stages:
- linting
- testing
......@@ -14,16 +14,19 @@ before_script:
- python --version # For debugging
- pip install --upgrade pip
- pip install --user -r requirements.txt # install dependencies from file
PEP8:
stage: linting
script:
- pip install flake8
- flake8 --count .
Pylint:
stage: linting
script:
- pip install pylint
- find . -type f -name '*.py' | xargs pylint -rn --rcfile='plotid/.pylintrc' # Find all python files and check the code with pylint
test:
stage: testing
tags:
......@@ -31,6 +34,7 @@ test:
script:
- python tests/runner_tests.py
coverage: "/TOTAL.*\\s+(\\d+\\.\\d+%)$/"
pages:
stage: docs
script:
......@@ -44,7 +48,10 @@ pages:
rules:
- if: "$CI_COMMIT_REF_NAME == $CI_DEFAULT_BRANCH"
- when: manual
sast:
before_script:
- echo "No before script pls"
variables:
SAST_EXCLUDED_PATHS: spec, test, tmp
stage: security
......@@ -52,6 +59,8 @@ sast:
- docker
dependency_scanning:
before_script:
- echo "No before script pls"
stage: security
include:
......
Dependencies of plotID
==================================
The plotID package depends on other software for its full funcionality. Since plotID is a Python program, Python ≥ 3.10 is needed. A list of all dependencies and their connection to plotID is provided here.
- `matplotlib <https://matplotlib.org/stable/index.html>`_: Famous plotting engine. matplotlib plots and figures can be tagged and published with plotID.
- `Pillow <https://pillow.readthedocs.io/en/stable/>`_: Library for image processing. If no plotting engine was used that is supported by plotID, image files can be tagged as well. This is done with Pillow. Additionally, Pillow is used to print the QR codes on the plots.
- `qrcode <https://github.com/lincolnloop/python-qrcode>`_: Creates QR codes from input data. qrcode is used to create the QR code which is printed on the plot in the end.
- `numpy <https://numpy.org/doc/stable/>`_: Package for scientific computing. Right now it is only used to generate sample data in the examples. Since it is a dependency of matplotlib, it has to be installed anyway.
Optional depedencies that are not necessary to run plotID but more to contribute to the code are the following:
- `coverage <https://coverage.readthedocs.io/en/6.5.0/#>`_: Program to measure the code coverage. It is used in the development of plotID to monitor the coverage of the code when the unit tests are run.
- `sphinx <https://www.sphinx-doc.org/en/master/>`_: Program to build documentation. For example, this documentatio is generated with the help of sphinx.
- `sphinx-autoapi <https://sphinx-autoapi.readthedocs.io/en/latest/>`_: Generates documentation files automatically from documentation inside the code. This has the advantage that code can be documented inside the code but can also be read in the documentation without having two places with the same content.
- `sphinx-rtd-theme <https://sphinx-rtd-theme.readthedocs.io/en/stable/>`_: Readthedocs theme for nicer documentation style.
- `myst-parser <https://myst-parser.readthedocs.io/en/latest/>`_: Extenstion for sphinx, e.g. to include markdown files in the documentation. That allows to include plotID's README.md in the documentation without storing it at two different places.
\ No newline at end of file
......@@ -12,6 +12,7 @@ Welcome to plotID's documentation!
README <readme_link.rst>
Structure and architecture <structure.rst>
Dependencies <dependencies.rst>
Indices and tables
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment