name: "Python Client pydantic v1: Petstore" on: pull_request: paths: - samples/openapi3/client/petstore/python-pydantic-v1-aiohttp/** - samples/openapi3/client/petstore/python-pydantic-v1/** - .github/workflows/samples-python-pydantic-v1-petstore.yaml jobs: build: name: Test Python client runs-on: ubuntu-latest strategy: fail-fast: false matrix: python-version: - "3.8" - "3.9" - "3.10" - "3.11" - "3.12" sample: - samples/openapi3/client/petstore/python-pydantic-v1-aiohttp - samples/openapi3/client/petstore/python-pydantic-v1 services: petstore-api: image: swaggerapi/petstore ports: - 80:8080 env: SWAGGER_HOST: http://petstore.swagger.io SWAGGER_BASE_PATH: /v2 steps: - uses: actions/checkout@v4 - uses: actions/setup-python@v5 id: py with: python-version: ${{ matrix.python-version }} - name: Cache uses: actions/cache@v4 with: key: ${{ runner.os }}-python-${{ steps.py.outputs.python-version }}- path: | ~/.cache/pypoetry/virtualenvs/ ~/.local/pipx/venvs/poetry/ .mypy_cache/ - name: Install poetry run: pipx install --python '${{ steps.py.outputs.python-path }}' poetry - name: Install working-directory: ${{ matrix.sample }} run: poetry install - name: Test working-directory: ${{ matrix.sample }} run: poetry run pytest -v