OpenSlides/.travis.yml

137 lines
3.4 KiB
YAML
Raw Normal View History

2018-08-08 21:09:22 +02:00
dist: xenial
sudo: true
2019-09-24 08:52:54 +02:00
cache:
- directories:
- $HOME/.cache/pip
- client/node_modules
matrix:
include:
2019-09-24 08:52:54 +02:00
- stage: "Dependencies"
name: "Installing dependencies for python"
language: python
python:
- "3.6"
2019-09-24 08:52:54 +02:00
cache:
pip: true
install:
- python --version
- pip install --upgrade setuptools pip
- pip install --upgrade --requirement requirements/development.txt
- pip install --upgrade .[big_mode]
- pip freeze
2019-09-24 08:52:54 +02:00
script: skip
- name: "Installing npm dependencies"
language: node_js
node_js: "10.9"
cache:
- directories:
- "client/node_modules"
before_install:
- npm install -g @angular/cli@~8.0.6
- ng --version
- cd client
install:
- npm install
script: skip
- stage: "Run tests"
name: "Client: Testing"
language: node_js
node_js: "10.9"
apt:
sources:
- google-chrome
packages:
- google-chrome-stable
services:
- xvfb
install:
- cd client
- export CHROME_BIN=/usr/bin/google-chrome
- export DISPLAY=:99.0
script:
- npm run test-silently
- name: "Client: Production Build (ES5)"
language: node_js
node_js: "10.9"
install:
- cd client
- sed -i '/\"target\"/c\\"target\":\"es5\",' tsconfig.json
script:
- npm run build
- name: "Client: Production Build (ES2015)"
language: node_js
node_js: "10.9"
install:
- cd client
- echo "Firefox ESR" > browserslist
script:
- npm run build
- name: "Client: Build"
language: node_js
node_js: "10.9"
script:
- cd client
- npm run build-debug
- name: "Server: Tests Python 3.6"
2019-09-24 08:52:54 +02:00
language: python
python:
- "3.6"
script:
2019-07-03 07:46:23 +02:00
- mypy openslides/ tests/
2019-08-20 12:00:54 +02:00
- pytest --cov --cov-fail-under=73
2019-09-24 08:52:54 +02:00
- name: "Server: Tests Python 3.7"
language: python
python:
- "3.7"
script:
- flake8 openslides tests
- isort --check-only --diff --recursive openslides tests
- black --check --diff --target-version py36 openslides tests
2019-07-03 07:46:23 +02:00
- mypy openslides/ tests/
2019-08-20 12:00:54 +02:00
- pytest --cov --cov-fail-under=73
- name: "Server: Tests Python 3.8"
language: python
python:
- "3.8"
script:
- flake8 openslides tests
- isort --check-only --diff --recursive openslides tests
- black --check --diff --target-version py36 openslides tests
- mypy openslides/ tests/
- pytest --cov --cov-fail-under=73
2019-09-24 08:52:54 +02:00
- name: "Client: Linting"
language: node_js
node_js: "10.9"
script:
2019-09-24 08:52:54 +02:00
- cd client
- npm run lint-check
2018-11-01 16:05:01 +01:00
2019-09-24 08:52:54 +02:00
- name: "Client: Code Formatting Check"
language: node_js
node_js: "10.9"
script:
2019-09-24 08:52:54 +02:00
- cd client
- npm list --depth=0 || cat --help
2018-12-15 12:24:07 +01:00
- npm run prettify-check
- name: "Server: Tests Startup Routine Python 3.7"
language: python
python:
- "3.7"
2018-11-01 16:05:01 +01:00
script:
- set -e
- python manage.py createsettings
- python manage.py migrate
- python manage.py runserver --noreload & (sleep 15 && kill $(ps aux | grep 'manage.py runserver' | head -n -1 | awk '{print $2}'))
- set +e