Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
62 changes: 62 additions & 0 deletions .github/workflows/bindings-node.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
name: bindings-node
on:
push:
branches: [main, feature/bindings]
paths:
- 'crates/engine/**'
- 'crates/js/**'
- 'bindings/node/**'
- 'bindings/CHROME_VERSION'
- '.github/workflows/bindings-node.yml'
pull_request:
paths:
- 'crates/engine/**'
- 'crates/js/**'
- 'bindings/node/**'
- 'bindings/CHROME_VERSION'
- '.github/workflows/bindings-node.yml'
workflow_dispatch:

jobs:
smoke:
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with: { node-version: "20" }
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
with:
workspaces: ". -> target"
- name: Install npm deps
working-directory: bindings/node
run: npm install
- name: Build native module
working-directory: bindings/node
run: npm run build:debug
- name: Run smoke tests
working-directory: bindings/node
run: npm test

e2e:
if: github.event_name == 'workflow_dispatch'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with: { node-version: "20" }
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
with:
workspaces: ". -> target"
- name: Build + E2E
working-directory: bindings/node
env: { FOLIO_E2E: "1" }
run: |
npm install
npm run build:debug
npm test
62 changes: 62 additions & 0 deletions .github/workflows/bindings-python.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
name: bindings-python
on:
push:
branches: [main, feature/bindings]
paths:
- 'crates/engine/**'
- 'crates/py/**'
- 'bindings/python/**'
- 'bindings/CHROME_VERSION'
- '.github/workflows/bindings-python.yml'
pull_request:
paths:
- 'crates/engine/**'
- 'crates/py/**'
- 'bindings/python/**'
- 'bindings/CHROME_VERSION'
- '.github/workflows/bindings-python.yml'
workflow_dispatch:

jobs:
smoke:
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with: { python-version: "3.10" }
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
with:
workspaces: ". -> target"
- name: Install build deps
run: pip install --upgrade pip maturin pytest
- name: Build wheel
run: maturin build --release --features chromium,libreoffice,chrome-fetch -m crates/py/Cargo.toml --out dist
- name: Install built wheel
shell: bash
run: pip install --find-links dist folio
- name: Run smoke tests
run: pytest -v bindings/python/tests/test_smoke.py

e2e:
if: github.event_name == 'workflow_dispatch'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with: { python-version: "3.10" }
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
with:
workspaces: ". -> target"
- name: Install build deps
run: pip install --upgrade pip maturin pytest
- name: Install + run E2E
env: { FOLIO_E2E: "1" }
run: |
maturin develop --release --features chromium,chrome-fetch -m crates/py/Cargo.toml
pytest -v -k e2e bindings/python/tests/
Loading
Loading