12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- stages:
- - build
- - test
- - deploy
- webui:
- stage: build
- image: node:14
- cache:
- paths:
- - webui/node_modules/
- before_script:
- - cd webui/
- - npm install
- script:
- - npm run build
- artifacts:
- expire_in: 1 day
- paths:
- - webui/dist/
- .python_test_template: &python_test_definition
- variables:
- PIP_CACHE_DIR: "$CI_PROJECT_DIR/.cache/pip"
- cache:
- key: "$CI_JOB_NAME"
- paths:
- - .cache/pip
- - env/
- before_script:
- - python -V
- - python -m venv env
- - source env/bin/activate
- - pip install numpy opencv-python Pillow scipy
- - pip install eventlet flask python-socketio
- - pip install coverage pylint
- script:
- - coverage run --source=pycs/ -m unittest discover test/
- - "pylint --fail-under=9.5
- --disable=duplicate-code
- --disable=missing-module-docstring
- --disable=too-many-instance-attributes
- --extension-pkg-whitelist=cv2
- --module-rgx='^[A-Za-z0-9]+$' --class-rgx='^[A-Za-z0-9]+$'
- app.py pycs"
- tests_3.7:
- stage: test
- image: python:3.7
- only:
- - master
- <<: *python_test_definition
- tests_3.8:
- stage: test
- image: python:3.8
- only:
- - master
- <<: *python_test_definition
- tests_3.9:
- stage: test
- image: python:3.9
- <<: *python_test_definition
- after_script:
- - source env/bin/activate
- - coverage report -m
- # tests_3.10:
- # stage: test
- # image: python:3.10
- # only:
- # - master
- # <<: *python_test_definition
- bundle:
- stage: deploy
- image: alpine
- script:
- - mv webui/dist dist
- - rm -rf webui
- - mv dist webui
- artifacts:
- expire_in: 30 days
- paths:
- - settings.json
- - app.py
- - pycs/
- - webui/
- - labels
- - models
|