name: CI on: [push, pull_request] jobs: test: name: Test on ${{ matrix.os }} runs-on: ${{ matrix.os }} strategy: matrix: os: [ubuntu-latest, macos-latest, windows-latest] steps: - name: Checkout source code uses: actions/checkout@master with: fetch-depth: 10 - name: Set up Python uses: actions/setup-python@master with: python-version: 3.8 - name: Install calibre dependencies run: python setup/unix-ci.py install - name: Bootstrap calibre run: python setup/unix-ci.py bootstrap - name: Test calibre env: PYTHONWARNINGS: error CALIBRE_SHOW_DEPRECATION_WARNINGS: 1 run: python setup/unix-ci.py test archtest: name: Test on Arch runs-on: ubuntu-latest container: image: 'archlinux/archlinux:latest' env: CI: 'true' steps: - name: Setup container run: | pacman -Syu --noconfirm pacman -S --noconfirm tar - name: Checkout source code uses: actions/checkout@master with: fetch-depth: 10 - name: Install calibre dependencies run: setup/arch-ci.sh - name: Bootstrap calibre run: runuser -u ci -- python setup.py bootstrap --ephemeral --debug --sanitize - name: Test calibre env: PYTHONWARNINGS: error CALIBRE_SHOW_DEPRECATION_WARNINGS: 1 run: | set -xe runuser -u ci -- python setup.py test --under-sanitize runuser -u ci -- python setup.py test_rs