puppeteer/.github/workflows/inspect-code.yml
Nikolay Vitkov 9d2b65912b
ci: split jobs (#11343)
Co-authored-by: jrandolf <101637635+jrandolf@users.noreply.github.com>
2023-11-10 14:45:37 +01:00

84 lines
2.4 KiB
YAML

name: Inspect code
# Declare default permissions as read only.
permissions: read-all
on:
push:
branches:
- main
pull_request:
branches:
- '**'
concurrency:
group: inspect-code-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
inspect-code:
name: '[Required] Inspect code'
runs-on: ubuntu-latest
steps:
- name: Check out repository
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
with:
fetch-depth: 2
- name: Set up Node.js
uses: actions/setup-node@8f152de45cc393bb48ce5d89d36b731f54556e65 # v4.0.0
with:
cache: npm
node-version: lts/*
- name: Install dependencies
run: npm ci
env:
PUPPETEER_SKIP_DOWNLOAD: true
# Set up GitHub Actions caching for Wireit.
- uses: google/wireit@f3a3c79c553122e2fe5829eeac7d815326502903 # setup-github-actions-caching/v1
- name: Check code
run: npm run check
- name: Validate licenses
run: npm run validate-licenses
- name: Build every package
run: npm run build
- name: Lint code
run: npm run lint
- name: Generate documents
run: npm run docs
- name: Check if autogenerated docs differ
run: |
diff_file=$(mktemp doc_diff_XXXXXX)
git diff --color > $diff_file
if [[ -s $diff_file ]]; then
echo "Please update the documentation by running 'npm run docs'. The following was the diff"
cat $diff_file
rm $diff_file
exit 1
fi
rm $diff_file
check-changes:
uses: ./.github/workflows/changed-packages.yml
with:
check-mergeable-state: true
doctest:
name: Doctest
runs-on: ubuntu-latest
needs: check-changes
if: ${{ false && contains(fromJSON(needs.check-changes.outputs.changes), 'puppeteer') }}
steps:
- name: Check out repository
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- name: Set up Node.js
uses: actions/setup-node@8f152de45cc393bb48ce5d89d36b731f54556e65 # v4.0.0
with:
cache: npm
node-version: lts/*
- name: Install dependencies
run: npm ci
env:
PUPPETEER_SKIP_DOWNLOAD: true
- name: Run tests
run: npm run doctest