woocommerce/.github/workflows/pr-lint-test-js.yml

52 lines
1.3 KiB
YAML
Raw Normal View History

name: Lint and tests for JS packages and woocommerce-admin/client
on:
pull_request:
paths:
- 'packages/js/**/**'
- 'plugins/woocommerce-admin/client/**'
- '!**.md'
2022-04-21 16:45:12 +00:00
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
lint-test-js:
name: Lint and Test JS
runs-on: ubuntu-20.04
steps:
- name: Check out repository code
2022-04-21 16:45:12 +00:00
uses: actions/checkout@v3
- uses: actions/setup-node@v2
with:
node-version: '16'
2022-05-13 20:43:33 +00:00
- name: Dependency caching
2022-04-21 16:45:12 +00:00
uses: actions/cache@v3
2022-05-13 20:43:33 +00:00
id: cache-deps
2022-04-21 16:45:12 +00:00
with:
path: |
~/.pnpm-store
2022-05-16 13:01:53 +00:00
~/.local/share/pnpm/store
2022-05-13 20:43:33 +00:00
~/.cache/composer/files
key: ${{ runner.os }}-pr-lint-test-js-${{ secrets.WORKFLOW_CACHE }}-${{ hashFiles('**/composer.lock', '**/pnpm-lock.yaml') }}
2022-04-21 16:45:12 +00:00
- name: Install PNPM
2022-05-02 17:08:52 +00:00
run: npm install -g pnpm@^6.24.2
2022-04-21 16:45:12 +00:00
- name: Install dependencies
run: pnpm install
- name: Lint
run: |
2022-04-29 20:31:19 +00:00
pnpm nx build woocommerce-admin
pnpm nx lint woocommerce-admin
pnpm nx lint:js-packages woocommerce-admin
- name: Test
run: |
pnpm nx build woocommerce-admin
pnpm nx test woocommerce-admin
pnpm nx test:packages woocommerce-admin