beets/.github/workflows/ci.yaml
2020-06-05 10:04:13 -04:00

95 lines
3 KiB
YAML

name: ci
on: [push, pull_request]
jobs:
test-27:
runs-on: ${{ matrix.platform }}
strategy:
matrix:
platform: [ ubuntu-latest ]
env:
NOSE_SHOW_SKIPPED: 1
PY_COLOR: 1
steps:
- uses: actions/checkout@v2
- name: Set up Python 2.7
uses: actions/setup-python@v2
with:
python-version: 2.7
- uses: actions/cache@v1
if: startsWith(runner.os, 'Linux')
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }}
restore-keys: |
${{ runner.os }}-pip-
- uses: actions/cache@v1
if: startsWith(runner.os, 'Windows')
with:
path: ~\AppData\Local\pip\Cache
key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }}
restore-keys: |
${{ runner.os }}-pip-
- name: Install base dependencies
run: |
python -m pip install --upgrade pip
pip install tox sphinx
- name: Test with tox
run: tox -e py27-test
test-3x:
runs-on: ${{ matrix.platform }}
strategy:
matrix:
platform: [ ubuntu-latest ]
python-version: [ 5, 6, 7, 8 ]
env:
NOSE_SHOW_SKIPPED: 1
PY_COLOR: 1
steps:
- uses: actions/checkout@v2
- name: Set up Python 3.${{ matrix.python-version }}
uses: actions/setup-python@v2
with:
python-version: 3.${{ matrix.python-version }}
- uses: actions/cache@v1
if: startsWith(runner.os, 'Linux')
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }}
restore-keys: |
${{ runner.os }}-pip-
- uses: actions/cache@v1
if: startsWith(runner.os, 'Windows')
with:
path: ~\AppData\Local\pip\Cache
key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }}
restore-keys: |
${{ runner.os }}-pip-
- name: Install base dependencies
run: |
python -m pip install --upgrade pip
pip install tox sphinx
- name: Test, coverage, and flake8 with tox
if: matrix.python-version == '8'
run: |
tox -e py3${{ matrix.python-version }}-test
tox -e py3${{ matrix.python-version }}-cov
tox -e py3${{ matrix.python-version }}-flake8
pip install codecov || true
codecov || true
- name: Test with tox
if: matrix.python-version != '8'
run: tox -e py3${{ matrix.python-version }}-test
docs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up Python to build docs with Sphinx
uses: actions/setup-python@v2
with:
python-version: 2.7
- name: Install base dependencies
run: |
python -m pip install --upgrade pip
python -m pip install tox sphinx
- name: Build and check docs using tox
run: tox -e docs