Newer
Older
name: CI
on:
push:
branches:
- master
pull_request:
paths-ignore:
- 'doc/*.rst'
schedule:
- cron: '17 3 * * 0'
jobs:
flake8:
name: Flake8
runs-on: ubuntu-latest
strategy:
matrix:
python-version: [3.7]
- uses: actions/checkout@v2
- uses: actions/setup-python@v1
with:
python-version: ${{ matrix.python-version }}
uses: dschep/install-poetry-action@v1.3
with:
create_virtualenvs: true
path: ~/.cache/pypoetry/virtualenvs
key: pypoetry-${{ hashFiles('**/poetry.lock') }}-${{ matrix.python-version }}
pypoetry-${{ hashFiles('**/poetry.lock') }}-${{ matrix.python-version }}
- name: Install Dependencies
run: poetry install
if: steps.cache.outputs.cache-hit != 'true'
run: poetry run flake8 relate course accounts tests
mypy:
name: Mypy
runs-on: ubuntu-latest
strategy:
matrix:
python-version: [3.7]
- uses: actions/checkout@v2
- uses: actions/setup-python@v1
with:
python-version: ${{ matrix.python-version }}
uses: dschep/install-poetry-action@v1.3
with:
create_virtualenvs: true
path: ~/.cache/pypoetry/virtualenvs
key: pypoetry-${{ hashFiles('**/poetry.lock') }}-${{ matrix.python-version }}
pypoetry-${{ hashFiles('**/poetry.lock') }}-${{ matrix.python-version }}
- name: Install Dependencies
run: poetry install
if: steps.cache.outputs.cache-hit != 'true'
- name: "Mypy"
run: poetry run mypy relate course
cmdline:
name: Command Line
runs-on: ubuntu-latest
strategy:
matrix:
python-version: [3.7]
- uses: actions/checkout@v2
- uses: actions/setup-python@v1
with:
python-version: ${{ matrix.python-version }}
uses: dschep/install-poetry-action@v1.3
with:
create_virtualenvs: true
path: ~/.cache/pypoetry/virtualenvs
key: pypoetry-${{ hashFiles('**/poetry.lock') }}-${{ matrix.python-version }}
pypoetry-${{ hashFiles('**/poetry.lock') }}-${{ matrix.python-version }}
- name: Install Dependencies
run: poetry install
if: steps.cache.outputs.cache-hit != 'true'
run: PY_EXE=$(poetry run which python) bash ./test-command-line-tool.sh $(poetry run which python)
pytest:
name: Pytest on Py${{ matrix.python-version }}
runs-on: ubuntu-latest
strategy:
matrix:
python-version: [3.6, 3.7, 3.8]
steps:
- uses: actions/checkout@v2
- uses: actions/setup-python@v1
with:
python-version: ${{ matrix.python-version }}
- name: Install Poetry
uses: dschep/install-poetry-action@v1.3
with:
create_virtualenvs: true
- uses: actions/cache@v1
id: cache
with:
path: ~/.cache/pypoetry/virtualenvs
key: pypoetry-${{ hashFiles('**/poetry.lock') }}-${{ matrix.python-version }}
pypoetry-${{ hashFiles('**/poetry.lock') }}-${{ matrix.python-version }}
- name: Install Dependencies
run: poetry install
if: steps.cache.outputs.cache-hit != 'true'
sudo DEBIAN_FRONTEND=noninteractive apt-get install -qq gettext
PY_EXE=$(poetry run which python) RL_CI_TEST=test bash ./run-tests-for-ci.sh
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v1
with:
fail_ci_if_error: true
name: Pytest Expensive on Py${{ matrix.python-version }}
runs-on: ubuntu-latest
strategy:
matrix:
python-version: [3.6, 3.7, 3.8]
steps:
- uses: actions/checkout@v2
- uses: actions/setup-python@v1
with:
python-version: ${{ matrix.python-version }}
- name: Install Poetry
uses: dschep/install-poetry-action@v1.3
with:
create_virtualenvs: true
- uses: actions/cache@v1
id: cache
with:
path: ~/.cache/pypoetry/virtualenvs
key: pypoetry-${{ hashFiles('**/poetry.lock') }}-${{ matrix.python-version }}
pypoetry-${{ hashFiles('**/poetry.lock') }}-${{ matrix.python-version }}
- name: Install Dependencies
run: poetry install
if: steps.cache.outputs.cache-hit != 'true'
sudo DEBIAN_FRONTEND=noninteractive apt-get install -qq gettext
PY_EXE=$(poetry run which python) RL_CI_TEST=test_expensive bash ./run-tests-for-ci.sh
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v1
with:
fail_ci_if_error: true