Create dependabot.yml #82
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Tests | |
on: | |
pull_request: | |
branches: [main] | |
push: | |
branches: [main] | |
jobs: | |
run-node-tests: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
node-version: [14.x, 16.x, 18.x] | |
fail-fast: false | |
steps: | |
- name: Spin up SurrealDB image | |
run: | | |
docker run -d -p 8000:8000 surrealdb/surrealdb:latest start --user root --pass root memory | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Install Node.js ${{ matrix.node-version }} | |
uses: actions/setup-node@v3 | |
with: | |
node-version: ${{ matrix.node-version }} | |
- name: Install pnpm | |
uses: pnpm/[email protected] | |
with: | |
version: 7 | |
run_install: false | |
- name: Get pnpm store directory | |
id: pnpm-cache | |
run: | | |
echo "::set-output name=pnpm_cache_dir::$(pnpm store path)" | |
- name: Setup pnpm cache | |
uses: actions/cache@v3 | |
with: | |
path: ${{ steps.pnpm-cache.outputs.pnpm_cache_dir }} | |
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} | |
restore-keys: | | |
${{ runner.os }}-pnpm-store- | |
- name: Install dependencies | |
run: pnpm i | |
- name: Build | |
run: pnpm run build | |
- name: Test | |
run: pnpm run test:nodejs | |
run-misc-checks: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Install Node.js | |
uses: actions/setup-node@v3 | |
with: | |
node-version: 16.x | |
- name: Install pnpm | |
uses: pnpm/[email protected] | |
with: | |
version: 7 | |
run_install: false | |
- name: Get pnpm store directory | |
id: pnpm-cache | |
run: | | |
echo "::set-output name=pnpm_cache_dir::$(pnpm store path)" | |
- name: Setup pnpm cache | |
uses: actions/cache@v3 | |
with: | |
path: ${{ steps.pnpm-cache.outputs.pnpm_cache_dir }} | |
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} | |
restore-keys: | | |
${{ runner.os }}-pnpm-store- | |
- name: Install dependencies | |
run: pnpm i | |
- name: Build | |
run: pnpm run build | |
- name: Type Check | |
run: pnpm run type-check | |
- name: Lint | |
run: pnpm run lint | |
# - name: Test ESM | |
# run: cd examples/esm && npm i && npm start | |
# - name: Test CJS | |
# run: cd examples/cjs && npm i && npm start | |
# run-browser-tests: | |
# runs-on: ubuntu-latest | |
# services: | |
# surrealdb: | |
# image: surrealdb/surrealdb:latest | |
# ports: | |
# - 8000:8000 | |
# options: >- | |
# --health-cmd "start --log trace --user root --pass root memory" | |
# --health-interval 10s | |
# --health-timeout 5s | |
# --health-retries 5 | |
# steps: | |
# - name: Checkout | |
# uses: actions/checkout@v3 | |
# - name: Install Node.js | |
# uses: actions/setup-node@v3 | |
# with: | |
# node-version: 16.x | |
# - name: Install pnpm | |
# uses: pnpm/[email protected] | |
# with: | |
# version: 7 | |
# run_install: false | |
# - name: Get pnpm store directory | |
# id: pnpm-cache | |
# run: | | |
# echo "::set-output name=pnpm_cache_dir::$(pnpm store path)" | |
# - name: Setup pnpm cache | |
# uses: actions/cache@v3 | |
# with: | |
# path: ${{ steps.pnpm-cache.outputs.pnpm_cache_dir }} | |
# key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} | |
# restore-keys: | | |
# ${{ runner.os }}-pnpm-store- | |
# - name: Install dependencies | |
# run: pnpm i && pnpx playwright install | |
# - name: Build | |
# run: pnpm run build | |
# - name: Run browser tests | |
# run: pnpm run test:browser | |
# run-deno-tests: | |
# runs-on: ubuntu-latest | |
# services: | |
# surrealdb: | |
# image: surrealdb/surrealdb:latest | |
# ports: | |
# - 8000:8000 | |
# options: >- | |
# --health-cmd "start --log trace --user root --pass root memory" | |
# --health-interval 10s | |
# --health-timeout 5s | |
# --health-retries 5 | |
# steps: | |
# - name: Checkout | |
# uses: actions/checkout@v3 | |
# - name: Install Node.js | |
# uses: actions/setup-node@v3 | |
# with: | |
# node-version: 16.x | |
# - name: Install Deno | |
# uses: denolib/setup-deno@v2 | |
# with: | |
# deno-version: 1.26.x | |
# - name: Install pnpm | |
# uses: pnpm/[email protected] | |
# with: | |
# version: 7 | |
# run_install: false | |
# - name: Get pnpm store directory | |
# id: pnpm-cache | |
# run: | | |
# echo "::set-output name=pnpm_cache_dir::$(pnpm store path)" | |
# - name: Setup pnpm cache | |
# uses: actions/cache@v3 | |
# with: | |
# path: ${{ steps.pnpm-cache.outputs.pnpm_cache_dir }} | |
# key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} | |
# restore-keys: | | |
# ${{ runner.os }}-pnpm-store- | |
# - name: Install dependencies | |
# run: pnpm i | |
# - name: Build | |
# run: pnpm run build | |
# - name: Test | |
# run: pnpm run test:deno |