name: CI on: push: branches: [main] pull_request: jobs: test: runs-on: ${{ matrix.os }} strategy: matrix: include: - os: ubuntu-22.04 - os: ubuntu-24.04 - os: windows-latest steps: - uses: actions/checkout@v4 - name: Set up Python uses: actions/setup-python@v5 with: python-version: "3.11" - name: Install test deps (Linux) if: runner.os == 'Linux' run: | pip install pytest sudo apt-get install -y shellcheck inkscape - name: Install test deps (Windows) if: runner.os == 'Windows' run: pip install pytest - name: Shellcheck (Linux only) if: runner.os == 'Linux' run: | shellcheck install.sh shellcheck uninstall.sh shellcheck scripts/detect_platform.sh - name: Python unit tests run: pytest tests/test_merge_prefs.py -v - name: Python integration tests run: pytest tests/test_install.py -v