mirror of
https://github.com/wassname/openrouter-python-sdk-retry-errors.git
synced 2026-07-29 11:23:49 +08:00
feat: add PR validation workflow
The Python SDK had no pull_request-triggered checks, so regen PRs (speakeasy-sdk-regen-*) carried an empty status-check rollup and the auto-merge flow would merge them with zero validation. The TypeScript SDK validates every regen PR via pr-validation.yaml; Python had no equivalent. Add a single-file PR Validation workflow that builds the package and runs the SDK's existing quality gates (mypy, pyright, pylint) via uv. No tests exist in this repo yet, so no API-key secret is needed, which also lets the workflow run on fork PRs. paths-ignore on .speakeasy/in.openapi.yaml mirrors TS so pure spec-bump PRs don't double-trigger. This registers a `validate` check that the auto-merge wait_for_checks step will gate on once both land.
This commit is contained in:
@@ -0,0 +1,37 @@
|
|||||||
|
name: PR Validation
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
paths-ignore:
|
||||||
|
- .speakeasy/in.openapi.yaml
|
||||||
|
|
||||||
|
concurrency:
|
||||||
|
group: pr-validation-${{ github.event.pull_request.number }}
|
||||||
|
cancel-in-progress: true
|
||||||
|
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
validate:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout code
|
||||||
|
uses: actions/checkout@v5
|
||||||
|
|
||||||
|
- name: Install uv
|
||||||
|
uses: astral-sh/setup-uv@v5
|
||||||
|
with:
|
||||||
|
enable-cache: true
|
||||||
|
|
||||||
|
- name: Build SDK
|
||||||
|
run: uv build
|
||||||
|
|
||||||
|
- name: Type check (mypy)
|
||||||
|
run: uv run --group dev mypy src
|
||||||
|
|
||||||
|
- name: Type check (pyright)
|
||||||
|
run: uv run --group dev pyright src
|
||||||
|
|
||||||
|
- name: Lint (pylint)
|
||||||
|
run: uv run --group dev pylint src --rcfile pylintrc
|
||||||
Reference in New Issue
Block a user