--- name: Test on: push: pull_request: schedule: - cron: '9 0 * * 1' jobs: test_py27: runs-on: ubuntu-20.04 container: image: python:2.7.18-buster strategy: fail-fast: false matrix: python-version: [2.7] steps: - uses: actions/checkout@v3 - name: Install dependencies run: python -m pip install --upgrade pip virtualenv tox - name: Run tox run: tox -e "$(echo py${{ matrix.python-version }} | sed -e 's/[.]//g;s/pypypy/pypy/')" --skip-missing-interpreters false test_legacy: runs-on: ubuntu-20.04 strategy: fail-fast: false matrix: python-version: [3.6, pypy2.7] steps: - uses: actions/checkout@v3 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v4 with: python-version: ${{ matrix.python-version }} - name: Install dependencies run: python -m pip install --upgrade pip tox - name: Run tox run: tox -e "$(echo py${{ matrix.python-version }} | sed -e 's/[.]//g;s/pypypy/pypy/')" --skip-missing-interpreters false test: runs-on: ubuntu-latest strategy: fail-fast: false matrix: python-version: [3.7, 3.8, 3.9, '3.10', 3.11, 3.12, pypy3.9] steps: - uses: actions/checkout@v3 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v4 with: python-version: ${{ matrix.python-version }} - name: Install dependencies run: python -m pip install --upgrade pip tox - name: Run tox run: tox -e "$(echo py${{ matrix.python-version }} | sed -e 's/[.]//g;s/pypypy/pypy/')" --skip-missing-interpreters false tox_job: runs-on: ubuntu-latest strategy: fail-fast: false matrix: tox_job: [docs, flake8, headers] steps: - uses: actions/checkout@v3 - name: Set up Python uses: actions/setup-python@v4 with: python-version: 3.x - name: Install dependencies run: python -m pip install --upgrade pip tox - name: Run tox ${{ matrix.tox_job }} run: tox -e ${{ matrix.tox_job }} --skip-missing-interpreters false CodeQL: runs-on: ubuntu-latest permissions: actions: read contents: read security-events: write steps: - name: Checkout repository uses: actions/checkout@v3 - name: Initialize CodeQL uses: github/codeql-action/init@v2 with: languages: python - name: Build uses: github/codeql-action/autobuild@v2 - name: Perform CodeQL Analysis uses: github/codeql-action/analyze@v2