name: Test on: pull_request: workflow_call: workflow_dispatch: concurrency: group: test-${{ github.ref }} cancel-in-progress: true permissions: contents: read jobs: test: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Set up pnpm uses: pnpm/action-setup@v4 - name: Set up Node uses: actions/setup-node@v4 with: node-version: 22 cache: pnpm - name: Install dependencies run: pnpm install --frozen-lockfile # Required for the client suite, which resolves @docmost/editor-ext via its # dist build (the server suite also rebuilds it through its own pretest). - name: Build editor-ext run: pnpm --filter @docmost/editor-ext build # git-sync is no longer committed in built form (build/ is gitignored), so # CI must compile it: the server suite imports the package via its built # build/index.js. The server pretest also builds it, but building here keeps # it explicit and independent of pnpm lifecycle ordering. - name: Build git-sync run: pnpm --filter @docmost/git-sync build - name: Run tests run: pnpm -r test