Skip to content

[SDK-4436] test: Migrate CI to GitHub Actions #37

[SDK-4436] test: Migrate CI to GitHub Actions

[SDK-4436] test: Migrate CI to GitHub Actions #37

Workflow file for this run

name: Integration Tests
on:
merge_group:
workflow_dispatch:
pull_request:
branches:
- master
push:
branches:
- master
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.ref != 'refs/heads/master' }}
env:
NODE_ENV: development
NODE_VERSION: 18
DOMAIN: your-tenant.auth0.com
AUDIENCE: https://api.example.com/users
PORT: 3001
CYPRESS_USER_EMAIL: [email protected]
CYPRESS_USER_PASSWORD: mockpassword
jobs:
test-cra:
name: cra-react-router
runs-on: ubuntu-latest
env:
SKIP_PREFLIGHT_CHECK: true
REACT_APP_DOMAIN: your-tenant.auth0.com
REACT_APP_CLIENT_ID: yourclientid
REACT_APP_AUDIENCE: https://api.example.com/users
REACT_APP_API_PORT: 3001
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Prepare environment
uses: ./.github/actions/integration
with:
integration: 'cra-react-router'
node: ${{ env.NODE_VERSION }}
- name: Run Cypress integration test
uses: cypress-io/github-action@v6
with:
spec: cypress/integration/smoke.test.ts
install: false
build: npm run build
start: |
npm start --prefix=examples/users-api --port 3001 &
npm start --prefix=examples/cra-react-router --port 3000 &
# test-gatsby:
# name: Run Gatsby tests
# runs-on: ubuntu-latest
# steps:
# - name: Checkout code
# uses: actions/checkout@v4
# - name: Prepare integration test
# uses: ./.github/actions/integration
# with:
# integration: 'gatsby-app'
# node: ${{ env.NODE_VERSION }}
# dotenv: .env.development.sample
# - name: Run integration tests
# run: |
# npm run test:gatsby
# env:
# GATSBY_DOMAIN: your-tenant.auth0.com
# GATSBY_CLIENT_ID: yourclientid
# GATSBY_AUDIENCE: https://api.example.com/users
# GATSBY_API_PORT: 3001
# test-nextjs:
# name: Run NextJS tests
# runs-on: ubuntu-latest
# steps:
# - name: Checkout code
# uses: actions/checkout@v4
# - name: Prepare integration test
# uses: ./.github/actions/integration
# with:
# integration: 'nextjs-app'
# node: ${{ env.NODE_VERSION }}
# - name: Run integration tests
# run: |
# npm run test:nextjs
# env:
# NEXT_PUBLIC_DOMAIN: your-tenant.auth0.com
# NEXT_PUBLIC_CLIENT_ID: yourclientid
# NEXT_PUBLIC_AUDIENCE: https://api.example.com/users
# NEXT_PUBLIC_API_PORT: 3001