59 lines
1.6 KiB
YAML
59 lines
1.6 KiB
YAML
name: test / unit / python-sdk
|
|
|
|
on:
|
|
push:
|
|
branches: [main]
|
|
paths:
|
|
- "sdk-python/**"
|
|
- ".github/workflows/test_unit-python-sdk.yml"
|
|
pull_request:
|
|
branches: [main]
|
|
paths:
|
|
- "sdk-python/**"
|
|
- ".github/workflows/test_unit-python-sdk.yml"
|
|
|
|
# Least-privilege by default. Individual jobs/steps can widen when needed.
|
|
permissions:
|
|
contents: read
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
test:
|
|
runs-on: depot-ubuntu-24.04-4
|
|
timeout-minutes: 10
|
|
permissions:
|
|
contents: read
|
|
# id-token: write is required for Depot OIDC auth (runs-on: depot-ubuntu-*).
|
|
id-token: write
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
|
|
steps:
|
|
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7
|
|
with:
|
|
persist-credentials: false
|
|
|
|
- name: Set up Python
|
|
uses: actions/setup-python@ece7cb06caefa5fff74198d8649806c4678c61a1 # v6.3.0
|
|
with:
|
|
python-version: ${{ matrix.python-version }}
|
|
|
|
- name: Install Poetry
|
|
uses: snok/install-poetry@a783c322200f0519c7926aa6faa857c4e23e9263 # v1.4.2
|
|
with:
|
|
version: latest
|
|
virtualenvs-create: true
|
|
virtualenvs-in-project: true
|
|
|
|
- name: Install dependencies
|
|
working-directory: sdk-python
|
|
run: poetry lock && poetry install --with dev
|
|
|
|
- name: Run tests
|
|
working-directory: sdk-python
|
|
run: poetry run python -m pytest tests/ -v
|