Skip to content

feat: update jacly

feat: update jacly #99

Workflow file for this run

name: CI
on:
push:
pull_request:
jobs:
ci:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [22.x, 24.x]
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Checkout Jaculus-tools
run: git clone https://github.com/jaculus-org/Jaculus-tools.git --branch feat/lib ../Jaculus-tools
# - name: Checkout wokwi-cli
# run: git clone https://github.com/JakubAndrysek/wokwi-cli.git --branch monorepo-separation ../wokwi-cli
- name: Setup pnpm
uses: pnpm/action-setup@v3
with:
version: latest
- name: Build Jaculus-tools
run: cd ../Jaculus-tools && pnpm install --frozen-lockfile && pnpm -r build
# - name: Build wokwi-cli
# run: cd ../wokwi-cli && pnpm install --frozen-lockfile && pnpm -r build
- name: Setup Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
- name: Get pnpm store directory
shell: bash
run: |
echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV
- name: Setup pnpm cache
uses: actions/cache@v4
with:
path: ${{ env.STORE_PATH }}
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-pnpm-store-
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Check formatting
run: pnpm format:check
- name: Run linter
run: pnpm lint
- name: Run type check
run: pnpm type-check
- name: Build packages
run: pnpm build
- name: Install Playwright Browsers
run: pnpm --filter "@jaculus/jacly-web" exec playwright install --with-deps
# Playwright tests
- name: Run tests (also Playwright)
run: pnpm test
- uses: actions/upload-artifact@v4
if: ${{ !cancelled() }}
with:
name: playwright-report-web-${{ matrix.node-version }}-${{ github.run_number }}
path: apps/web/playwright-report/
retention-days: 30
pre-commit:
runs-on: ubuntu-latest
name: Validate pre-commit hooks
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Checkout Jaculus-tools
run: git clone https://github.com/jaculus-org/Jaculus-tools.git --branch feat/lib ../Jaculus-tools
- name: Checkout wokwi-cli
run: git clone https://github.com/JakubAndrysek/wokwi-cli.git --branch monorepo-separation ../wokwi-cli
- name: Setup pnpm
uses: pnpm/action-setup@v3
with:
version: latest
- name: Build Jaculus-tools
run: cd ../Jaculus-tools && pnpm install --frozen-lockfile && pnpm -r build
- name: Build wokwi-cli
run: cd ../wokwi-cli && pnpm install --frozen-lockfile && pnpm -r build
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 24.x
- name: Setup pnpm
uses: pnpm/action-setup@v3
with:
version: latest
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Install Playwright Browsers
run: pnpm --filter "@jaculus/jacly-web" exec playwright install --with-deps
- name: Run comprehensive CI check
run: pnpm check-all
- name: Run tests
run: pnpm test