Skip to content

Fix: improve relation widget (#7968) #8287

Fix: improve relation widget (#7968)

Fix: improve relation widget (#7968) #8287

Workflow file for this run

name: Node CI
concurrency:
group: ci-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
on:
push:
branches:
- main
- master
pull_request:
types: [opened, synchronize, reopened]
jobs:
changes:
runs-on: ubuntu-latest
outputs:
cms: ${{ steps.filter.outputs.cms }}
steps:
- uses: actions/checkout@v4
- uses: dorny/paths-filter@v2
id: filter
with:
filters: |
cms:
- '!website/**'
build-unit:
needs: changes
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
node-version: [24.x]
include:
- os: ubuntu-latest
node-version: 22.x
fail-fast: true
if: ${{ needs.changes.outputs.cms == 'true' }}
steps:
- uses: actions/checkout@v4
- name: Install pnpm
uses: pnpm/action-setup@v4
with:
version: 11.12.0
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
check-latest: true
cache: 'pnpm'
- name: log versions
run: node --version && pnpm --version
- name: install dependencies (skip Cypress binary)
run: pnpm install --frozen-lockfile
env:
CYPRESS_INSTALL_BINARY: 0
- name: run unit tests
run: pnpm run test:ci
e2e-build:
needs: changes
if: ${{ needs.changes.outputs.cms == 'true' }}
runs-on: depot-ubuntu-24.04
steps:
- uses: actions/checkout@v4
- name: Install pnpm
uses: pnpm/action-setup@v4
with:
version: 11.12.0
- name: Use Node.js 24.x
uses: actions/setup-node@v4
with:
node-version: 24.x
check-latest: true
cache: 'pnpm'
- name: Cache Nx local cache
uses: actions/cache@v4
with:
path: .nx/cache
key: nx-${{ runner.os }}-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
nx-${{ runner.os }}-
- name: install dependencies
run: pnpm install --frozen-lockfile
env:
CYPRESS_INSTALL_BINARY: 0
- name: build demo site
run: pnpm run build:demo
- name: test package integrity
run: pnpm run test:package-integrity
- name: upload demo site
uses: actions/upload-artifact@v4
with:
name: e2e-demo
path: dev-test/dist
if-no-files-found: error
retention-days: 1
e2e:
needs: [changes, e2e-build]
if: ${{ needs.changes.outputs.cms == 'true' }}
runs-on: depot-ubuntu-24.04
timeout-minutes: 40
strategy:
fail-fast: false
matrix:
machine: [1, 2, 3, 4]
steps:
- uses: actions/checkout@v4
- name: Install pnpm
uses: pnpm/action-setup@v4
with:
version: 11.12.0
- name: Use Node.js 24.x
uses: actions/setup-node@v4
with:
node-version: 24.x
check-latest: true
cache: 'pnpm'
- name: Cache Cypress binary
uses: actions/cache@v4
with:
path: ~/.cache/Cypress
key: cypress-${{ runner.os }}-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
cypress-${{ runner.os }}-
- name: install dependencies
run: pnpm install --frozen-lockfile
- name: download demo site
uses: actions/download-artifact@v4
with:
name: e2e-demo
path: dev-test/dist
- name: run e2e tests (parallel)
run: pnpm run test:e2e:run-ci
env:
CI_BUILD_ID: ${{ github.run_id }}-${{ github.run_attempt }}
MACHINE_INDEX: ${{ matrix.machine }}
MACHINE_COUNT: 4
CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
NODE_OPTIONS: --max-old-space-size=4096
TZ: Europe/Amsterdam
GITHUB_EVENT_NAME: ${{ github.event_name }}
GITHUB_BASE_REF: ${{ github.base_ref }}
- uses: actions/upload-artifact@v4
if: failure()
with:
name: cypress-results-${{ matrix.machine }}
path: |
cypress/screenshots
cypress/videos