Skip to content

Port logic for making recordings public #4191

Port logic for making recordings public

Port logic for making recordings public #4191

Workflow file for this run

name: Cypress Tests
on:
push:
branches-ignore:
- "renovate/**"
jobs:
install:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Cypress install
uses: cypress-io/github-action@v6
with:
runTests: false
# report machine parameters
- run: yarn cypress info
- run: node --version
- run: node -p 'os.cpus()'
- run: yarn types
#- run: yarn lint
#- run: yarn test:unit:ci
#- run: yarn build:ci
ui-chrome-tests:
timeout-minutes: 15
runs-on: ubuntu-latest
needs: install
name: "UI Tests - React ${{ matrix.react }}"
strategy:
# when one test fails, DO NOT cancel the other
# containers, because this will kill Cypress processes
# leaving Cypress Cloud hanging ...
# https://github.com/cypress-io/github-action/issues/48
fail-fast: false
matrix:
# react: ["18.2.0", "0.0.0-experimental-03d6f7cf0-20240209", "19.0.0-rc-c21bcd627b-20240624"]
react: ["0.0.0-experimental-03d6f7cf0-20240209"]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Use Node
uses: actions/setup-node@v4
with:
node-version: 20
cache: "yarn"
- name: Ensure Replay and Replay Browser are installed
run: npx replayio install
- name: Node info
run: node -v
- name: Install deps and custom React version
run: yarn add react@${{ matrix.react }} react-dom@${{ matrix.react }}
- name: Check React version
run: yarn why react
- name: Build client app
run: yarn build:ci
- name: "UI Tests - Chrome"
uses: cypress-io/github-action@v6
with:
build: yarn cypress info
start: yarn start:ci
wait-on: "http://localhost:3000"
wait-on-timeout: 120
browser: "replay-chromium"
#record: true
# parallel: true
# group: "UI - Chrome"
spec: cypress/tests/ui/*
config-file: cypress.config.ts
env:
# CYPRESS_PROJECT_ID: ${{ secrets.CYPRESS_PROJECT_ID }}
# CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
# Recommended: pass the GitHub token lets this action correctly
# determine the unique run id necessary to re-run the checks
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
DEBUG: "cypress:server:args,replay:cypress:plugin,replay:test-utils:reporter"
REPLAY_API_KEY: ${{ secrets.REPLAY_API_KEY }}
REACT_VERSION: ${{ matrix.react }}
CI: true
# ui-chrome-mobile-tests:
# timeout-minutes: 15
# runs-on: ubuntu-latest
# container:
# image: cypress/browsers:node-20.12.0-chrome-123.0.6312.86-1-ff-124.0.2-edge-123.0.2420.65-1
# options: --user 1001
# needs: install
# strategy:
# # when one test fails, DO NOT cancel the other
# # containers, because this will kill Cypress processes
# # leaving Cypress Cloud hanging ...
# # https://github.com/cypress-io/github-action/issues/48
# fail-fast: false
# matrix:
# # run copies of the current job in parallel
# containers: [1, 2, 3, 4, 5]
# steps:
# - name: Checkout
# uses: actions/checkout@v4
# - name: Download the build folders
# uses: actions/download-artifact@v4
# with:
# name: build
# path: build
# - name: "UI Tests - Chrome - Mobile"
# uses: cypress-io/github-action@v6
# with:
# config: '{"e2e":{"viewportWidth":375,"viewportHeight":667}}'
# start: yarn start:ci
# wait-on: "http://localhost:3000"
# wait-on-timeout: 120
# browser: chrome
# record: true
# parallel: true
# group: "UI - Chrome - Mobile"
# spec: cypress/tests/ui/*
# config-file: cypress.config.ts
# env:
# CYPRESS_PROJECT_ID: ${{ secrets.CYPRESS_PROJECT_ID }}
# CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
# # Recommended: pass the GitHub token lets this action correctly
# # determine the unique run id necessary to re-run the checks
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# ui-firefox-tests:
# timeout-minutes: 15
# runs-on: ubuntu-latest
# container:
# image: cypress/browsers:node-20.12.0-chrome-123.0.6312.86-1-ff-124.0.2-edge-123.0.2420.65-1
# options: --user 1001
# needs: install
# strategy:
# # when one test fails, DO NOT cancel the other
# # containers, because this will kill Cypress processes
# # leaving Cypress Cloud hanging ...
# # https://github.com/cypress-io/github-action/issues/48
# fail-fast: false
# matrix:
# # run copies of the current job in parallel
# containers: [1, 2, 3, 4, 5]
# steps:
# - name: Checkout
# uses: actions/checkout@v4
# - name: Download the build folders
# uses: actions/download-artifact@v4
# with:
# name: build
# path: build
# - name: "UI Tests - Firefox"
# uses: cypress-io/github-action@v6
# with:
# start: yarn start:ci
# wait-on: "http://localhost:3000"
# wait-on-timeout: 120
# browser: firefox
# record: true
# parallel: true
# group: "UI - Firefox"
# spec: cypress/tests/ui/*
# config-file: cypress.config.ts
# env:
# CYPRESS_PROJECT_ID: ${{ secrets.CYPRESS_PROJECT_ID }}
# CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
# # Recommended: pass the GitHub token lets this action correctly
# # determine the unique run id necessary to re-run the checks
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# ui-firefox-mobile-tests:
# timeout-minutes: 15
# runs-on: ubuntu-latest
# container:
# image: cypress/browsers:node-20.12.0-chrome-123.0.6312.86-1-ff-124.0.2-edge-123.0.2420.65-1
# options: --user 1001
# needs: install
# strategy:
# # when one test fails, DO NOT cancel the other
# # containers, because this will kill Cypress processes
# # leaving Cypress Cloud hanging ...
# # https://github.com/cypress-io/github-action/issues/48
# fail-fast: false
# matrix:
# # run copies of the current job in parallel
# containers: [1, 2, 3, 4, 5]
# steps:
# - name: Checkout
# uses: actions/checkout@v4
# - name: Download the build folders
# uses: actions/download-artifact@v4
# with:
# name: build
# path: build
# - name: "UI Tests - Firefox - Mobile"
# uses: cypress-io/github-action@v6
# with:
# config: '{"e2e":{"viewportWidth":375,"viewportHeight":667}}'
# start: yarn start:ci
# wait-on: "http://localhost:3000"
# wait-on-timeout: 120
# browser: firefox
# record: true
# parallel: true
# group: "UI - Firefox - Mobile"
# spec: cypress/tests/ui/*
# config-file: cypress.config.ts
# env:
# CYPRESS_PROJECT_ID: ${{ secrets.CYPRESS_PROJECT_ID }}
# CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
# # Recommended: pass the GitHub token lets this action correctly
# # determine the unique run id necessary to re-run the checks
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}