Skip to content

S1 벤치 비교 CLI 추가 #108

S1 벤치 비교 CLI 추가

S1 벤치 비교 CLI 추가 #108

Workflow file for this run

# CI: 구조 게이트 + 브라우저 런타임 게이트. 게이트 정의의 SSOT는 tests/ (여기는 디스패치만).
name: ci
on:
push:
branches: [main]
pull_request:
jobs:
structure:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 22
- run: npm test
browser:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 22
# ubuntu 러너에 Google Chrome이 프리인스톨되어 있다. CI=true라 --no-sandbox가 자동 적용된다.
- run: npm run test:browser
env:
PYPROC_BROWSER: /usr/bin/google-chrome
PYPROC_GATE_OUT: gateMeasurements.json
# 제품 소비자 게이트: npm pack으로 설치한 pyproc을 브라우저 앱이 public specifier로 import한다.
- run: npm run test:consumer
env:
PYPROC_BROWSER: /usr/bin/google-chrome
# 러너 실측 수치를 보존한다: 원장/리드미의 로컬 수치와 비교 가능한 근거.
- uses: actions/upload-artifact@v4
if: always()
with:
name: gate-measurements
path: gateMeasurements.json
if-no-files-found: ignore
# 예제 실행 게이트: 데모 페이지가 사람이 여는 그대로 완주하는지(진열장 회귀 방지).
- run: npm run test:examples
env:
PYPROC_BROWSER: /usr/bin/google-chrome
# WASI 세션 게이트: 승격된 bootWasi/WasiSession의 실배선. CI엔 30MB wasm 자산이 없어
# SKIP green(자산 있는 로컬/환경에서만 완전 검증). import/워커 배선은 여기서도 확인된다.
- run: node tests/browser/run.mjs tests/browser/wasiGate.html
env:
PYPROC_BROWSER: /usr/bin/google-chrome