openlp/.gitlab-ci.yml

101 lines
2.0 KiB
YAML

stages:
- test
- deploy
lint-python:
stage: test
image: openlp/debian
script:
- sh scripts/generate_resources.sh
- flake8
lint-javascript:
stage: test
image: openlp/angular
script:
- yarn install
- yarn lint
test-debian:
stage: test
image: openlp/debian
script:
- sh scripts/generate_resources.sh
- xvfb-run -s '-screen 0 1024x768x24' pytest-3 --color=no --disable-warnings --cov openlp --cov-report term
- mv .coverage linux.coverage
artifacts:
paths:
- linux.coverage
test-ubuntu:
stage: test
image: openlp/ubuntu
script:
- sh scripts/generate_resources.sh
- xvfb-run -s '-screen 0 1024x768x24' pytest-3 --color=no --disable-warnings
test-fedora:
stage: test
image: openlp/fedora
script:
- sh scripts/generate_resources.sh
- xvfb-run -s '-screen 0 1024x768x24' pytest-3 --color=no --disable-warnings
test-arch:
stage: test
image: openlp/arch
script:
- sh scripts/generate_resources.sh
- xvfb-run -s '-screen 0 1024x768x24' pytest --color=no --disable-warnings
test-macos:
stage: test
tags:
- macos
script:
- export PATH=/opt/local/bin:$PATH
- sh scripts/generate_resources.sh
- python3 -m pytest --color=no --disable-warnings --cov openlp
- mv .coverage macos.coverage
artifacts:
paths:
- macos.coverage
only:
- master@openlp/openlp
test-display:
stage: test
image: openlp/angular
script:
- yarn install
- yarn test --browsers ChromiumHeadlessCI
upload-pypi:
stage: deploy
image: openlp/debian
script:
- python3 setup.py sdist bdist_wheel
- twine upload dist/*
only:
- tags
pages:
stage: deploy
image: openlp/debian
script:
- fixpaths linux.coverage
- fixpaths macos.coverage
- python3-coverage combine linux.coverage macos.coverage
- python3-coverage html
- mv htmlcov public
- python3-coverage report
artifacts:
paths:
- public
expire_in: 30 days
dependencies:
- test-debian
- test-macos
only:
- master@openlp/openlp