Skip to content

release version patch #152

release version patch

release version patch #152

Workflow file for this run

name: 'CI: TS-Check & Test'
on:
push:
paths:
- 'source/src/**'
- 'examples/src/**/*.spec.ts'
concurrency:
group: ${{ github.workflow }}
cancel-in-progress: true
jobs:
# Install & caches "fresh" node_modules
npm-install:
name: Install npm deps
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [ 16.x ]
steps:
- uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
cache: 'npm'
cache-dependency-path: |
package-lock.json
source/package-lock.json
examples/package-lock.json
www/package-lock.json
- name: Cache node_modules for root
id: cache-node-modules-root
uses: actions/cache@v3
with:
path: node_modules
key: node-modules-root-${{ github.run_id }}
- name: Cache node_modules for source
id: cache-node-modules-source
uses: actions/cache@v3
with:
path: source/node_modules
key: node-modules-source-${{ github.run_id }}
- name: Cache node_modules for examples
id: cache-node-modules-examples
uses: actions/cache@v3
with:
path: examples/node_modules
key: node-modules-examples-${{ github.run_id }}
- name: Cache node_modules for www
id: cache-node-modules-www
uses: actions/cache@v3
with:
path: www/node_modules
key: node-modules-www-${{ github.run_id }}
- name: Cache node_modules for www/dataserver
id: cache-node-modules-www-dataserver
uses: actions/cache@v3
with:
path: www/dataserver/node_modules
key: node-modules-www-dataserver-${{ github.run_id }}
- name: Execute 'npm ci' in monorepo
run: npm ci
- name: Execute 'npm i' in www/dataserver
run: npm run www-dataserver:install
- name: Get installed Playwright version
id: playwright-version
run: echo "::set-output name=version::$(npm ls @playwright/test | grep @playwright | sed 's/.*@//')"
working-directory: examples
- name: Cache browser binaries for Playwright
id: playwright-cache
uses: actions/cache@v3
with:
path: '~/.cache/ms-playwright'
key: '${{ runner.os }}-playwright-${{ steps.playwright-version.outputs.version }}'
# Compiles all TS files in the monorepo
ts-check:
needs: npm-install
name: Compile source code
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [ 16.x ]
steps:
- uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- name: Load cached node_modules for root
id: cache-node-modules-root
uses: actions/cache@v3
with:
path: node_modules
key: node-modules-root-${{ github.run_id }}
- name: Load cached node_modules for source
id: cache-node-modules-source
uses: actions/cache@v3
with:
path: source/node_modules
key: node-modules-source-${{ github.run_id }}
- name: Load cached node_modules for examples
id: cache-node-modules-examples
uses: actions/cache@v3
with:
path: examples/node_modules
key: node-modules-examples-${{ github.run_id }}
- name: Load cached node_modules for www
id: cache-node-modules-www
uses: actions/cache@v3
with:
path: www/node_modules
key: node-modules-www-${{ github.run_id }}
- name: Load cached node_modules for www/dataserver
id: cache-node-modules-www-dataserver
uses: actions/cache@v3
with:
path: www/dataserver/node_modules
key: node-modules-www-dataserver-${{ github.run_id }}
- name: Compile source code in monorepo
run: npm run ci:ts-check
run-tests:
needs: npm-install
name: Run tests
runs-on: ubuntu-latest
env:
NEXT_PUBLIC_BASE_URL: https://infinite-table.com/.netlify/functions/json-server
strategy:
matrix:
node-version: [ 16.x ]
steps:
- uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- name: Load cached node_modules for root
id: cache-node-modules-root
uses: actions/cache@v3
with:
path: node_modules
key: node-modules-root-${{ github.run_id }}
- name: Load cached node_modules for source
id: cache-node-modules-source
uses: actions/cache@v3
with:
path: source/node_modules
key: node-modules-source-${{ github.run_id }}
- name: Load cached node_modules for examples
id: cache-node-modules-examples
uses: actions/cache@v3
with:
path: examples/node_modules
key: node-modules-examples-${{ github.run_id }}
- name: Get installed Playwright version
id: playwright-version
run: echo "::set-output name=version::$(npm ls @playwright/test | grep @playwright | sed 's/.*@//')"
working-directory: examples
- name: Load cached browser binaries for Playwright
id: playwright-cache
uses: actions/cache@v3
with:
path: '~/.cache/ms-playwright'
key: '${{ runner.os }}-playwright-${{ steps.playwright-version.outputs.version }}'
- name: Build test app
run: npm run ci:test:build
- name: Running Playwright Tests
run: npm run ci:test:run
env:
NEXT_PUBLIC_ADAPTABLE_LICENSE_KEY: ${{ secrets.NEXT_PUBLIC_ADAPTABLE_LICENSE_KEY }}