Skip to content

Remote e2e tests

Remote e2e tests #10

Workflow file for this run

name: Remote e2e tests
on:
- workflow_dispatch
jobs:
refine-vite:
runs-on: ubuntu-latest
name: Vite
concurrency:
group: ${{ github.ref }}-e2e-remote-vite-${{ matrix.data_provider }}-${{ matrix.ui_framework }}
cancel-in-progress: true
strategy:
fail-fast: false
matrix:
data_provider:
[
custom-json-rest,
strapi-v4,
nestjsx-crud,
airtable,
supabase,
appwrite,
hasura,
]
ui_framework: [antd, chakra, mantine, mui, no]
steps:
- name: Checkout
uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 18
- name: Install
run: npm install
- name: Download Example
id: download_step
run: FRAMEWORK=vite CI_USER_AGENT=${{secrets.CI_USER_AGENT}} DATA_PROVIDER=${{matrix.data_provider}} UI_FRAMEWORK=${{matrix.ui_framework}} node ./.github/workflows/build-remote.js
- name: Install & Build Deps
run: |
cd ${{ steps.download_step.outputs.project_path }}
npm install
npm run build
npm run preview -- --port 3000 --host &
- name: Run Cypress on local
uses: cypress-io/github-action@v4
with:
command: npx cypress run --record --parallel --env=AUTH_PROVIDER=${{ steps.download_step.outputs.auth_provider }},UI_FRAMEWORK=${{ matrix.ui_framework }},FRAMEWORK=react,DATA_PROVIDER=${{ matrix.data_provider }}
install: false
start: "npm ls"
wait-on: "http://localhost:3000"
env:
CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
CYPRESS_USER_AGENT: ${{ secrets.CI_USER_AGENT }}
refine-nextjs:
runs-on: ubuntu-latest
name: NextJS
concurrency:
group: ${{ github.ref }}-e2e-remote-nextjs-${{ matrix.data_provider }}-${{ matrix.ui_framework }}
cancel-in-progress: true
strategy:
fail-fast: false
matrix:
data_provider:
[
custom-json-rest,
strapi-v4,
nestjsx-crud,
airtable,
supabase,
appwrite,
hasura,
]
ui_framework: [antd, chakra, mantine, mui, no]
steps:
- name: Checkout
uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 18
- name: Install
run: npm install
- name: Download Example
id: download_step
run: FRAMEWORK=nextjs CI_USER_AGENT=${{secrets.CI_USER_AGENT}} DATA_PROVIDER=${{matrix.data_provider}} UI_FRAMEWORK=${{matrix.ui_framework}} node ./.github/workflows/build-remote.js
- name: Install & Build Deps
run: |
rm -rf .eslintrc .prettierrc
cd ${{ steps.download_step.outputs.project_path }}
npm install
npm run build
npm run start &
- name: Run Cypress on local
uses: cypress-io/github-action@v4
with:
install: false
command: npx cypress run --record --parallel --env=AUTH_PROVIDER=${{ steps.download_step.outputs.auth_provider }},UI_FRAMEWORK=${{ matrix.ui_framework }},FRAMEWORK=nextjs,DATA_PROVIDER=${{ matrix.data_provider }}
start: "npm ls"
wait-on: "http://0.0.0.0:3000"
env:
CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
CYPRESS_USER_AGENT: ${{ secrets.CI_USER_AGENT }}
refine-remix:
runs-on: ubuntu-latest
name: Remix
concurrency:
group: ${{ github.ref }}-e2e-remote-remix-${{ matrix.data_provider }}-${{ matrix.ui_framework }}
cancel-in-progress: true
strategy:
fail-fast: false
matrix:
data_provider:
[
custom-json-rest,
strapi-v4,
nestjsx-crud,
airtable,
supabase,
appwrite,
hasura,
]
ui_framework: [antd, chakra, mantine, mui, no]
steps:
- name: Checkout
uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 18
- name: Install
run: npm install
- name: Download Example
id: download_step
run: FRAMEWORK=remix CI_USER_AGENT=${{secrets.CI_USER_AGENT}} DATA_PROVIDER=${{matrix.data_provider}} UI_FRAMEWORK=${{matrix.ui_framework}} node ./.github/workflows/build-remote.js
- name: Install & Build Deps
run: |
cd ${{ steps.download_step.outputs.project_path }}
npm install
npm run build
HOST=0.0.0.0 npm run start &
- name: Run Cypress on local
uses: cypress-io/github-action@v4
with:
install: false
command: npx cypress run --record --parallel --env=AUTH_PROVIDER=${{ steps.download_step.outputs.auth_provider }},UI_FRAMEWORK=${{ matrix.ui_framework }},FRAMEWORK=remix,DATA_PROVIDER=${{ matrix.data_provider }}
start: "npm ls"
wait-on: "http://0.0.0.0:3000"
env:
CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
CYPRESS_USER_AGENT: ${{ secrets.CI_USER_AGENT }}