Skip to content

Adds PR checks for examples #60

Adds PR checks for examples

Adds PR checks for examples #60

Workflow file for this run

name: Typecheck (sdk)
permissions:
contents: read
on:
pull_request:
paths:
- "python/sdk/**"
- "python/example/**"
- "ts/sdk/**"
- "rust/**"
- ".github/workflows/typecheck.yaml"
jobs:
python-example-build:
runs-on: ubuntu-latest
defaults:
run:
working-directory: python
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: "3.13"
- name: Install SDK
run: python -m pip install --upgrade pip && python -m pip install ./sdk
- name: Validate Python example imports
run: python -c "import runpy; runpy.run_path('example/main.py', run_name='__not_main__')"
- name: Byte-compile Python example
run: python -m py_compile example/main.py
typecheck:
runs-on: ubuntu-latest
defaults:
run:
working-directory: ts/sdk
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node
uses: actions/setup-node@v4
with:
node-version: "24"
cache: "yarn"
cache-dependency-path: ts/sdk/yarn.lock
- name: Enable Corepack
run: corepack enable
- name: Install dependencies
run: yarn install --frozen-lockfile
- name: Typecheck
run: yarn build:types
- name: Build TypeScript example
run: yarn build:example
rust-typecheck:
runs-on: ubuntu-latest
defaults:
run:
working-directory: rust
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Rust
uses: dtolnay/rust-toolchain@stable
- name: "Cargo Check (default TLS: native-tls)"
run: cargo check
- name: Cargo Check (rustls/aws-lc-rs)
run: cargo check --no-default-features --features tls-rustls
- name: Build Rust examples (default TLS)
run: cargo build --examples
- name: Build Rust examples (rustls/aws-lc-rs)
run: cargo build --examples --no-default-features --features tls-rustls