Add timestamp #315
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# For all pull requests made to master, next, dev branches, this workflow will: | |
# - install all dependencies | |
# - run all tests for the 'use-shopping-cart' workspace with yarn | |
name: Tests | |
on: | |
pull_request: | |
branches: [master, next, dev] | |
jobs: | |
test-package: | |
name: Tests | |
runs-on: | |
- ubuntu-latest | |
- macos-latest | |
strategy: | |
matrix: | |
node_version: ['12', '14', '16'] | |
steps: | |
- uses: actions/checkout@v2 | |
# Set up Node and Yarn | |
- uses: actions/[email protected] | |
with: | |
# Version Spec of the version to use. Examples: 12.x, 10.15.1, >=10.15.0 | |
node-version: ${{ matrix.node-version }} | |
# Used to specify a package manager for caching in the default directory. Supported values: npm, yarn | |
cache: yarn | |
# Caching for Yarn | |
- id: yarn-cache-dir-path | |
run: echo "::set-output name=dir::$(yarn cache dir)" | |
- uses: actions/cache@v2 | |
id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`) | |
with: | |
path: ${{ steps.yarn-cache-dir-path.outputs.dir }} | |
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} | |
restore-keys: | | |
${{ runner.os }}-yarn- | |
# Install dependencies | |
- run: pnpm install --frozen-lockfile | |
# Run integration and unit tests | |
- run: pnpm --filter use-shopping-cart run test | |
# Run TypeScript type definition tests | |
- run: pnpm --filter use-shopping-cart run test:types | |
build-package: | |
name: Build | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- uses: actions/setup-node@v2 | |
with: | |
node-version: 16 | |
cache: yarn | |
# Caching for Yarn | |
- id: yarn-cache-dir-path | |
run: echo "::set-output name=dir::$(yarn cache dir)" | |
- uses: actions/cache@v2 | |
id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`) | |
with: | |
path: ${{ steps.yarn-cache-dir-path.outputs.dir }} | |
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} | |
restore-keys: | | |
${{ runner.os }}-yarn- | |
# Install dependencies | |
- run: pnpm install | |
# Build package | |
- run: pnpm --filter use-shopping-cart run build | |
lint-package: | |
continue-on-error: true | |
name: Lint | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- uses: actions/setup-node@v2 | |
with: | |
node-version: 16 | |
cache: yarn | |
# Caching for Yarn | |
- id: yarn-cache-dir-path | |
run: echo "::set-output name=dir::$(yarn cache dir)" | |
- uses: actions/cache@v2 | |
id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`) | |
with: | |
path: ${{ steps.yarn-cache-dir-path.outputs.dir }} | |
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} | |
restore-keys: | | |
${{ runner.os }}-yarn- | |
# Install dependencies | |
- run: pnpm install --frozen-lockfile | |
# Lint soure code | |
- run: pnpm --filter use-shopping-cart run lint |