From b49caf52737b79be028af1d5b2e7073c736887e9 Mon Sep 17 00:00:00 2001 From: "Tobias Wellnitz, DH1TW" Date: Tue, 26 Dec 2023 01:22:55 +0100 Subject: [PATCH] build on ubuntu 20 and 22 --- .github/workflows/test.yml | 50 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 829c6a9..c00ba94 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -53,6 +53,56 @@ jobs: if [[ $PYTHON_VERSION == 3.11 ]]; then codecov; fi cd docs && make html + test_linux_ubuntu_22: + runs-on: "ubuntu-22.04" + name: "Ubuntu latest - Python ${{ matrix.python-version }}" + env: + USING_COVERAGE: '3.11' + + strategy: + matrix: + python-version: ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12", "pypy3.7", "pypy3.8", "pypy3.9"] + redis-version: [6] + + steps: + - uses: "actions/checkout@v3" + - uses: "actions/setup-python@v4" + with: + python-version: "${{ matrix.python-version }}" + cache: "pip" + cache-dependency-path: | + **/setup.py + **/requirements*.txt + + - name: "Install dependencies" + run: | + set -xe + sudo apt-get install -y libxml2-dev libxslt-dev + python -VV + python -m pip install --upgrade pip setuptools wheel codecov + python -m pip install -e . + python -m pip install -r requirements-pytest.txt + python -m pip install -r requirements-docs.txt + + - name: Start Redis + uses: supercharge/redis-github-action@1.2.0 + with: + redis-version: ${{ matrix.redis-version }} + + - name: "Run tests for ${{ matrix.python-version }}" + env: + CLUBLOG_APIKEY: ${{ secrets.CLUBLOG_APIKEY }} + QRZ_USERNAME: ${{ secrets.QRZ_USERNAME }} + QRZ_PWD: ${{ secrets.QRZ_PWD }} + PYTHON_VERSION: ${{ matrix.python-version }} + # delay the execution randomly by a couple of seconds to reduce the amount + # of concurrent API calls on Clublog and QRZ.com when all CI jobs execute simultaneously + run: | + sleep $[ ( $RANDOM % 10 ) + 1 ]s + pytest --cov=./ + if [[ $PYTHON_VERSION == 3.11 ]]; then codecov; fi + cd docs && make html + # publish_package: # runs-on: "ubuntu-latest" # needs: ["test_linux"]