mirror of
https://github.com/jupyterhub/the-littlest-jupyterhub.git
synced 2025-12-18 21:54:05 +08:00
64 lines
1.6 KiB
YAML
64 lines
1.6 KiB
YAML
# This is a GitHub workflow defining a set of jobs with a set of steps.
|
|
# ref: https://docs.github.com/en/actions/learn-github-actions/workflow-syntax-for-github-actions
|
|
#
|
|
name: Unit tests
|
|
|
|
on:
|
|
pull_request:
|
|
paths-ignore:
|
|
- "docs/**"
|
|
- "**.md"
|
|
- "**.rst"
|
|
- ".github/workflows/*"
|
|
- "!.github/workflows/unit-test.yaml"
|
|
push:
|
|
paths-ignore:
|
|
- "docs/**"
|
|
- "**.md"
|
|
- "**.rst"
|
|
- ".github/workflows/*"
|
|
- "!.github/workflows/unit-test.yaml"
|
|
branches-ignore:
|
|
- "dependabot/**"
|
|
- "pre-commit-ci-update-config"
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
unit-test:
|
|
name: Unit tests
|
|
runs-on: ubuntu-18.04
|
|
container: ubuntu:18.04
|
|
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- uses: actions/setup-python@v2
|
|
with:
|
|
python-version: 3.6
|
|
|
|
- name: Install venv, git and setup venv
|
|
run: |
|
|
apt-get update --yes && apt-get install --yes python3-venv git
|
|
python3 -m venv /srv/venv
|
|
echo '/srv/venv/bin' >> $GITHUB_PATH
|
|
|
|
- name: Cache pip deps
|
|
uses: actions/cache@v2
|
|
with:
|
|
path: /srv/venv/
|
|
key: ${{ runner.os }}-pip-dependencies-${{ hashFiles('*setup.py', '*dev-requirements.txt') }}
|
|
|
|
- name: Install Python dependencies
|
|
run: |
|
|
python3 -m pip install -U pip==20.0.*
|
|
python3 -m pip install -r dev-requirements.txt
|
|
python3 -m pip install -e .
|
|
pip freeze
|
|
|
|
- name: Run unit tests
|
|
run: |
|
|
pytest --verbose --maxfail=2 --color=yes --cov=tljh tests/
|
|
|
|
- name: Upload code coverage stats
|
|
run: |
|
|
codecov
|