| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- name: Build and Test
- on:
- pull_request:
- branches: [master]
- jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v3
- - name: Setup Node.js
- uses: actions/setup-node@v1
- with:
- node-version: 18.x
- - name: Setup Corepack
- run: corepack enable
- - name: Install development dependencies
- env:
- YARN_ENABLE_IMMUTABLE_INSTALLS: false
- run: yarn install
- - name: Check Typescript
- run: npm run tsc
- - name: Check ESLint
- run: npm run eslint
- - name: Check Prettier
- run: npm run format
- - name: Run unit tests
- run: npm run test
- - name: Development build
- env:
- NODE_OPTIONS: "--openssl-legacy-provider"
- NODE_ENV: development
- run: npm run build
- - name: Run integration tests
- env:
- NODE_ENV: development
- # needs an invalid URL to prevent CORS related delays
- CORIOLIS_URL: http://invalidd.it/
- run: |
- touch .not-first-launch
- npm run start &
- sleep 5
- npm run e2e
- - name: Upload failure screenshots
- uses: actions/upload-artifact@v3
- if: failure()
- with:
- name: cypress-screenshots
- path: cypress/screenshots
- - name: Install production dependencies
- run: |
- rm -rf node_modules
- yarn workspaces focus --all --production
- - name: Production build
- env:
- NODE_OPTIONS: "--openssl-legacy-provider"
- run: npm run build
|