63 lines
1.7 KiB
YAML
63 lines
1.7 KiB
YAML
name: Web Code Coverage
|
|
|
|
on:
|
|
pull_request:
|
|
branches:
|
|
- "main"
|
|
- "develop"
|
|
- "release/*"
|
|
env:
|
|
NODE_VERSION: "18.16.0"
|
|
PNPM_VERSION: "8.5.0"
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
|
|
cancel-in-progress: true
|
|
jobs:
|
|
test:
|
|
if: github.event.pull_request.draft != true
|
|
runs-on: ubuntu-22.04
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Maximize build space (ubuntu only)
|
|
run: |
|
|
sudo rm -rf /usr/share/dotnet
|
|
sudo rm -rf /opt/ghc
|
|
sudo rm -rf "/usr/local/share/boost"
|
|
sudo rm -rf "$AGENT_TOOLSDIRECTORY"
|
|
sudo docker image prune --all --force
|
|
sudo rm -rf /opt/hostedtoolcache/codeQL
|
|
sudo rm -rf ${GITHUB_WORKSPACE}/.git
|
|
sudo rm -rf $ANDROID_HOME/ndk
|
|
- name: setup node
|
|
uses: actions/setup-node@v3
|
|
with:
|
|
node-version: ${{ env.NODE_VERSION }}
|
|
- name: setup pnpm
|
|
uses: pnpm/action-setup@v2
|
|
with:
|
|
version: ${{ env.PNPM_VERSION }}
|
|
# Install pnpm dependencies, cache them correctly
|
|
# and run all Cypress tests
|
|
- name: Cypress run
|
|
uses: cypress-io/github-action@v6
|
|
with:
|
|
component: true
|
|
build: pnpm run build
|
|
start: pnpm run start
|
|
browser: chrome
|
|
|
|
- name: Jest run
|
|
run: |
|
|
pnpm run test:unit
|
|
|
|
- name: Upload coverage to Codecov
|
|
uses: codecov/codecov-action@v2
|
|
with:
|
|
token: cf9245e0-e136-4e21-b0ee-35755fa0c493
|
|
files: coverage/jest/lcov.info, coverage/cypress/lcov.info
|
|
flags: appflowy_web
|
|
name: codecov-umbrella
|
|
fail_ci_if_error: true
|
|
verbose: true
|
|
|