Skip to content

Feature/wt 1691 analytics #4989

Feature/wt 1691 analytics

Feature/wt 1691 analytics #4989

name: Build, Lint, Typecheck, Test
on:
push:
branches:
- main
pull_request:
jobs:
build:
name: Build
runs-on: ubuntu-latest-4-cores
env:
NODE_OPTIONS: --max-old-space-size=14366
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Use Node.js
uses: actions/setup-node@v3
with:
node-version: lts/*
registry-url: https://registry.npmjs.org/
cache: 'yarn'
- name: Install dependencies
run: yarn install --immutable
- name: Check Single Package Version Policy
run: yarn syncpack:check
- name: Build
run: yarn build
test:
name: Test
runs-on: ubuntu-latest-4-cores
env:
NODE_OPTIONS: --max-old-space-size=14366
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Use Node.js
uses: actions/setup-node@v3
with:
node-version: lts/*
registry-url: https://registry.npmjs.org/
cache: 'yarn'
- name: Install dependencies
run: yarn install --immutable
- name: Build
run: yarn build
- name: Test
run: yarn test
- name: Get reviewing teams
id: reviewer-teams
run: echo "teams=${{ join(github.event.pull_request.requested_teams.*.name, ', ') }}" >> $GITHUB_OUTPUT
- name: Checkout SDK test coverage
if: ${{ contains(steps.reviewer-teams.outputs.teams, 'Wallets')}}
run: yarn test:checkout:sdk:coverage
- name: Upload Checkout SDK test coverage artifacts
if: ${{ contains(steps.reviewer-teams.outputs.teams, 'Wallets')}}
uses: actions/upload-artifact@v2
with:
name: checkout-sdk-coverage-report
path: ./packages/checkout/sdk/coverage
cypress:
name: Cypress
runs-on: ubuntu-latest-4-cores
env:
NODE_OPTIONS: --max-old-space-size=14366
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Use Node.js
uses: actions/setup-node@v3
with:
node-version: lts/*
registry-url: https://registry.npmjs.org/
cache: 'yarn'
- name: Install dependencies
run: yarn install --immutable
- name: Get reviewing teams
id: reviewer-teams
run: echo "teams=${{ join(github.event.pull_request.requested_teams.*.name, ', ') }}" >> $GITHUB_OUTPUT
- name: Build
if: ${{ contains(steps.reviewer-teams.outputs.teams, 'Wallets') && !contains(github.event.pull_request.title, 'SKIP-CY') }}
run: yarn build
- name: Checkout-widgets cypress tests
if: ${{ contains(steps.reviewer-teams.outputs.teams, 'Wallets') && !contains(github.event.pull_request.title, 'SKIP-CY') }}
run: yarn test:checkout:cypress
- name: Upload cypress videos artifacts
if: ${{ contains(steps.reviewer-teams.outputs.teams, 'Wallets') && !contains(github.event.pull_request.title, 'SKIP-CY') }}
uses: actions/upload-artifact@v2
with:
name: checkout-widgets-cypress-videos
path: ./packages/checkout/widgets-lib/cypress/videos
- name: Upload cypress screenshots artifacts
uses: actions/upload-artifact@v2
if: failure()
with:
name: checkout-widgets-cypress-screenshots
path: ./packages/checkout/widgets-lib/cypress/screenshots
lint:
name: Lint
runs-on: ubuntu-latest-4-cores
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Use Node.js
uses: actions/setup-node@v3
with:
node-version: lts/*
registry-url: https://registry.npmjs.org/
cache: 'yarn'
- name: Install dependencies
run: yarn install --immutable
- name: Lint
run: yarn lint