--- name: CI on: [push, pull_request] jobs: lint: runs-on: ubuntu-latest steps: - name: Checkout Repository uses: actions/checkout@v1 - name: Set up Python 3.7 uses: actions/setup-python@v2 with: python-version: 3.7 - name: Install dependencies run: | python3.7 -m pip install nox - name: Lint the code run: nox -s lint test-build-distribution: runs-on: ubuntu-latest steps: - name: Checkout Repository uses: actions/checkout@v1 - name: Set up Python 3.7 uses: actions/setup-python@v2 with: python-version: 3.7 - name: Install build tools run: | python3.7 -m pip install --upgrade build - name: Build project for distribution run: | python3.7 -m build test-linux: strategy: fail-fast: false matrix: python-version: [2.7, 3.5, 3.6, 3.7, 3.8, 3.9] experimental: [false] include: - python-version: 3.10.0-beta.2 experimental: true runs-on: ubuntu-latest name: test-${{ matrix.python-version }} continue-on-error: ${{ matrix.experimental }} steps: - name: Checkout Repository uses: actions/checkout@v1 - name: Set Up Python - ${{ matrix.python-version }} uses: actions/setup-python@v2 with: python-version: ${{ matrix.python-version }} - name: Install Dependencies run: | python -m pip install -r dev-requirements.txt - name: Run Tests run: | python setup.py test twine-check: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Set up Python uses: actions/setup-python@v2 with: python-version: '3.x' - name: Install dependencies run: | python -m pip install --upgrade pip python -m pip install setuptools wheel twine - name: Build source distribution run: python setup.py sdist bdist_wheel - name: Check with Twine working-directory: dist run: twine check *