From 37c943839dd54b4f0ab6acb2c25f14247292e1b4 Mon Sep 17 00:00:00 2001 From: Oleg Broytman Date: Thu, 8 Dec 2022 18:43:19 +0300 Subject: [PATCH] CI(GHActions): Use `conda` to install older Pythons Ubuntu >= 22 and `setup-python` dropped Pythons < 3.7. Use `s-weigand/setup-conda` instead of `setup-python`. --- project_template/.github/workflows/test-publish.yaml | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/project_template/.github/workflows/test-publish.yaml b/project_template/.github/workflows/test-publish.yaml index a66ab6e..b4c337a 100644 --- a/project_template/.github/workflows/test-publish.yaml +++ b/project_template/.github/workflows/test-publish.yaml @@ -7,11 +7,13 @@ on: [push, pull_request] jobs: run-tests: + env: + not_in_conda: "['3.11', 'pypy-3.7']" strategy: matrix: os: [ubuntu-latest, macos-11, windows-latest] - python-version: ["2.7", "3.5", "3.6", "3.7", "3.8", "3.9", "3.10", "3.11", "pypy-2.7", "pypy-3.7"] + python-version: ["2.7", "3.5", "3.6", "3.7", "3.8", "3.9", "3.10", "3.11", "pypy-3.7"] include: - os: ubuntu-latest os-name: Linux @@ -29,9 +31,14 @@ jobs: steps: # Setup Python/pip + - uses: s-weigand/setup-conda@v1 + with: + python-version: ${{ matrix.python-version }} + if: ${{ runner.os == 'Linux' && !contains(fromJSON(env.not_in_conda), matrix.python-version) }} - uses: actions/setup-python@v4 with: python-version: ${{ matrix.python-version }} + if: ${{ runner.os != 'Linux' || contains(fromJSON(env.not_in_conda), matrix.python-version) }} - name: Cache pip uses: actions/cache@v3 with: @@ -49,7 +56,7 @@ jobs: run: | import os, sys if hasattr(sys, 'pypy_version_info'): - toxenv = 'pypy' + toxenv = 'pypy3' else: pyver = '%d%d' % tuple(sys.version_info[:2]) toxenv = 'py%s' % pyver -- 2.39.5