name: CI
on: [push, pull_request]
jobs:
  test:
    strategy:
      matrix:
        os: ['ubuntu-20.04', 'ubuntu-22.04']
        version: ['2.7', '3.8', '3.9', '3.10']
        exclude:
          - os: 'ubuntu-20.04'
            version: '3.10'
          - os: 'ubuntu-22.04'
            version: '2.7'
          - os: 'ubuntu-22.04'
            version: '3.8'
          - os: 'ubuntu-22.04'
            version: '3.9'
    name: Test
    runs-on: ${{ matrix.os }}
    steps:
    - name: Install host dependencies
      run: sudo apt update && sudo apt install -y libarchive-dev python${{ matrix.version }}-dev

    - name: Setup python
      uses: actions/setup-python@v4
      with:
        python-version: ${{ matrix.version }}

    - name: Check out code
      uses: actions/checkout@v3

    - name: Build the library
      env:
        PYVER: ${{ matrix.version }}
      run: make build

    - name: Run tests
      run: make test