Skip to content

Smart editor:

Smart editor: #3401

Workflow file for this run

name: Sanity Build
on: [pull_request]
jobs:
sanity-build:
strategy:
fail-fast: false
matrix:
apps: [frontend, server]
name: ${{ matrix.apps }} Sanity Build
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Bun
uses: oven-sh/setup-bun@v1
with:
bun-version: latest
- name: Install ${{ matrix.apps }} dependencies
shell: bash
run: |
cd ${{ matrix.apps }}
bun install
- name: Restore caches for ${{ matrix.apps }}
uses: actions/cache/restore@v3
with:
path: |
${{matrix.apps}}/.eslintcache
${{matrix.apps}}/.tsbuildinfo
key: ${{ runner.os }}-${{ matrix.apps }}-${{ hashFiles(format('{0}/tsconfig.json', matrix.apps), format('{0}/.eslintrc.cjs', matrix.apps), format('{0}/eslint.config.js', matrix.apps)) }}
- name: Typecheck ${{ matrix.apps }}
shell: bash
run: |
cd ${{ matrix.apps }}
bun run typecheck
- name: Lint ${{ matrix.apps }}
shell: bash
run: |
cd ${{ matrix.apps }}
npm run lint
- name: Test ${{ matrix.apps }}
shell: bash
run: |
cd ${{ matrix.apps }}
bun test
- name: Save caches for ${{ matrix.apps }}
uses: actions/cache/save@v3
if: always()
with:
path: |
${{matrix.apps}}/.eslintcache
${{matrix.apps}}/.tsbuildinfo
key: ${{ runner.os }}-${{ matrix.apps }}-${{ hashFiles(format('{0}/tsconfig.json', matrix.apps), format('{0}/.eslintrc.cjs', matrix.apps), format('{0}/eslint.config.js', matrix.apps)) }}