Skip to content

build(deps): bump the python-prod group across 1 directory with 2 upd… #1324

build(deps): bump the python-prod group across 1 directory with 2 upd…

build(deps): bump the python-prod group across 1 directory with 2 upd… #1324

Workflow file for this run

name: basic test
on:
push:
tags:
- ".*"
branches:
- master
pull_request:
branches:
- master
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
simple-checks:
runs-on: ubuntu-24.04
timeout-minutes: 10
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- name: Set up Python
uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
with:
python-version: "3.11"
- uses: j178/prek-action@4e14d07f9231acabce116ccfca13b13dd9755ece # v3.0.1
unit-tests:
runs-on: ubuntu-24.04
timeout-minutes: 10
needs: simple-checks
env:
TOXENV: py3
TOXCFG: tox.ini
strategy:
matrix:
python-version: ["3.11", "3.12", "3.13", "3.14"]
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- name: Install the latest version of uv
uses: astral-sh/setup-uv@20cfd1bf945f4377ade1205e4dbc17946fc9a30d # v10.0.1
with:
enable-cache: true
cache-dependency-glob: "uv.lock"
- name: run tests
run: |
uv sync --all-extras
uvx --python ${{ matrix.python-version }} tox -c ${TOXCFG} -e ${TOXENV}
integration-tests:
runs-on: ubuntu-24.04
timeout-minutes: 10
needs: unit-tests
strategy:
fail-fast: false
matrix:
include:
# integration tests
- TOXENV: py3-generic
TOXCFG: tox-integration.ini
- TOXENV: py3-mqtt
TOXCFG: tox-integration.ini
- TOXENV: py3-http
TOXCFG: tox-integration.ini
- TOXENV: py3-grpc
TOXCFG: tox-integration.ini
- TOXENV: py3-graphql
TOXCFG: tox-integration.ini
- TOXENV: py3-allure
TOXCFG: tox-integration.ini
env:
TOXENV: ${{ matrix.TOXENV }}
TOXCFG: ${{ matrix.TOXCFG }}
steps:
- uses: docker/setup-buildx-action@37fe631027851001ddb9b187196cc803df7f5f0e # v4.3.0
continue-on-error: true
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
env:
cache-name: cache-${{ matrix.TOXENV }}
with:
path: .tox
key: ${{ runner.os }}-tox-${{ env.cache-name }}-${{ hashFiles('pyproject.toml') }}
- uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('pyproject.toml') }}
restore-keys: |
${{ runner.os }}-pip-
- name: Set up Python
uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
with:
python-version: "3.11"
- name: Install the latest version of uv
uses: astral-sh/setup-uv@20cfd1bf945f4377ade1205e4dbc17946fc9a30d # v10.0.1
- name: Run tests
run: |
uv sync --all-extras --all-packages
uvx tox -c ${TOXCFG} -e ${TOXENV}
- name: Upload allure report
if: ${{ always() && matrix.TOXENV == 'py3-allure' }}
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
name: allure-report
path: example/allure/allure-report/index.html
if-no-files-found: error
custom-backend-tests:
name: Custom Backend Tests
needs: unit-tests
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- name: Setup Bats and bats libs
id: setup-bats
uses: bats-core/bats-action@77d6fb60505b4d0d1d73e48bd035b55074bbfb43 # v4.0.0
- name: Set up Python
uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
with:
python-version: "3.11"
- name: Install the latest version of uv
uses: astral-sh/setup-uv@20cfd1bf945f4377ade1205e4dbc17946fc9a30d # v10.0.1
- name: Run tests
env:
BATS_LIB_PATH: ${{ steps.setup-bats.outputs.lib-path }}
working-directory: ./example/custom_backend
run: ./run_tests.sh