Skip to content

Studio Unit Tests & Build Check #9

Studio Unit Tests & Build Check

Studio Unit Tests & Build Check #9

Workflow file for this run

# This workflow will do a clean install of node dependencies, cache/restore them, build the source code and run tests across different versions of node
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions
name: Studio Unit Tests & Build Check
on:
push:
branches: [master, studio]
paths:
- 'apps/studio/**'
- 'package-lock.json'
pull_request:
branches: [master, studio]
paths:
- 'apps/studio/**'
- 'package-lock.json'
workflow_dispatch:
# Cancel old builds on new commit for same workflow + branch/PR
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
check:
# Uses larger hosted runner as it significantly decreases build times
runs-on: [warp-ubuntu-latest-x64-4x;snapshot.key=warp-snap-praj-supabase-studio]
steps:
- uses: actions/checkout@v4
with:
sparse-checkout: |
apps/studio
packages
# clean: false
- name: Use Node.js
uses: Warpbuilds/setup-node@v4
with:
node-version-file: '.nvmrc'
cache: 'npm'
- name: Install deps
run: npm i --no-audit
working-directory: ./
- name: Run Tests
env:
# Default is 2 GB, increase to have less frequent OOM errors
NODE_OPTIONS: '--max_old_space_size=3072'
run: npm run test:studio
working-directory: ./
# - name: Create snapshot
# uses: WarpBuilds/snapshot-save@v1
# with:
# alias: 'warp-snap-praj-supabase-studio'
# fail-on-error: true
# wait-timeout-minutes: 45