Skip to content

Continuous Integration #441

Continuous Integration

Continuous Integration #441

Workflow file for this run

name: Continuous Integration
on:
push:
pull_request:
workflow_dispatch:
schedule:
- cron: '30 0 * * 1'
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Setup python
uses: actions/setup-python@v4
with:
architecture: x64
python-version: '3.11'
- name: Lint by pre-commit
run: |
pip install pre-commit
pre-commit run --all-files
test:
runs-on: ubuntu-latest
strategy:
max-parallel: 4
matrix:
python-version: [3.7, 3.8, 3.9, '3.10', '3.11']
sphinx-version: ['>=3.0.0,<4.0.0', '>=4.0.0,<5.0.0', '>=5.0.0,<5.1.0', '>=5.1.0,<6.0.0', '==7.*']
exclude:
# Old major version does not support python>=3.10
- python-version: '3.7'
sphinx-version: '==7.*'
- python-version: '3.10'
sphinx-version: '>=3.0.0,<4.0.0'
- python-version: '3.11'
sphinx-version: '>=3.0.0,<4.0.0'
steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
architecture: x64
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python tools/fetch_revealjs.py
pip install '.[screenshot,test]' 'Sphinx${{ matrix.sphinx-version }}'
playwright install
- if: ${{ matrix.sphinx-version == '>=3.0.0,<4.0.0' }}
run: pip install 'Jinja2<3.0.0' 'MarkupSafe<2.0.0'
- name: Run tests
run: |
pytest
buildtest:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Setup python
uses: actions/setup-python@v4
with:
architecture: x64
python-version: '3.11'
- name: Build
run: |
pip install flit
python tools/fetch_revealjs.py
flit build
ls -l dist