openlp/.gitlab-ci.yml

84 lines
2.0 KiB
YAML

stages:
- lint
- test
- deploy
lint:
stage: lint
image: openlp/debian
before_script:
- sh scripts/generate_resources.sh
script:
- flake8
test-debian:
stage: test
image: openlp/debian
before_script:
- sh scripts/generate_resources.sh
script:
- xvfb-run -s '-screen 0 1024x768x24' pytest-3 --color=no --disable-warnings --ignore tests/functional/openlp_plugins/presentations/test_pdfcontroller.py --cov openlp --cov-report term
- mv .coverage linux.coverage
artifacts:
paths:
- linux.coverage
test-ubuntu:
stage: test
image: openlp/ubuntu
before_script:
- sh scripts/generate_resources.sh
script:
- xvfb-run -s '-screen 0 1024x768x24' pytest-3 --color=no --disable-warnings --ignore tests/functional/openlp_plugins/presentations/test_pdfcontroller.py
test-fedora:
stage: test
image: openlp/fedora
before_script:
- sh scripts/generate_resources.sh
script:
- xvfb-run -s '-screen 0 1024x768x24' pytest-3 --color=no --disable-warnings --ignore tests/functional/openlp_plugins/presentations/test_pdfcontroller.py
test-arch:
stage: test
image: openlp/arch
before_script:
- sh scripts/generate_resources.sh
script:
- xvfb-run -s '-screen 0 1024x768x24' pytest --color=no --disable-warnings --ignore tests/functional/openlp_plugins/presentations/test_pdfcontroller.py
test-macos:
stage: test
tags:
- macos
before_script:
- export PATH=/opt/local/bin:$PATH
- sh scripts/generate_resources.sh
script:
- python3 -m pytest --color=no --disable-warnings --cov openlp
- mv .coverage macos.coverage
artifacts:
paths:
- macos.coverage
only:
- master@openlp/openlp
pages:
stage: deploy
image: openlp/debian
script:
- python3-coverage combine linux.coverage macos.coverage
- fixpaths .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