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