.github/workflows/change_check.yml
name: Pull Request Check
on: pull_request
jobs:
check:
runs-on: ubuntu-20.04
env:
BROWSERSLIST_IGNORE_OLD_DATA: true
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Use Node.js 18
uses: actions/setup-node@v3
with:
node-version: 18.x
- name: pnpm cache
uses: actions/cache@v3
with:
path: ./common/temp/pnpm-store
key: ${{ runner.os }}-pnpm-${{ hashFiles('common/config/rush/pnpm-lock.yaml') }}
restore-keys: ${{ runner.os }}-pnpm-
- name: Install
run: node common/scripts/install-run-rush.js install
- name: Check dependencies
run: node common/scripts/install-run-rush.js check
- name: Verify change files
run: node common/scripts/install-run-rush.js change --verify
- name: Rush Build
run: node common/scripts/install-run-rush.js rebuild --verbose
- name: Install API Extractor
run: npm install -g @microsoft/api-extractor@7.18.4
- name: Check for API changes to @snowplow/browser-tracker
working-directory: ./trackers/browser-tracker
run: api-extractor run
- name: Check for API changes to @snowplow/node-tracker
working-directory: ./trackers/node-tracker
run: api-extractor run
- name: Check bundle size using bundlemon
run: npx bundlemon@1.4.0
env:
BUNDLEMON_PROJECT_ID: 630fceda4ed824a9d3733ec0
CI_COMMIT_SHA: ${{github.event.pull_request.head.sha || github.sha}}