Files
test-repo/.github/workflows/prod-test.yml
T
dependabot[bot] 3deb7dca67 Build(deps): Bump actions/setup-node from 2.5.1 to 3 (#12365)
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 2.5.1 to 3.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v2.5.1...v3)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-28 09:13:10 +08:00

147 lines
3.5 KiB
YAML

name: Prod
on:
push:
branches:
- main
- patch-release
pull_request:
jobs:
build:
name: Build
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2.4.0
- name: Setup Node.js
uses: actions/setup-node@v3
with:
cache: "yarn"
- name: Install Dependencies
run: yarn install --frozen-lockfile
- name: Build Package
run: yarn build
- name: Upload Artifact
uses: actions/upload-artifact@v2
with:
name: dist
path: dist
# This step calls `git reset`
# It should be the last step
- name: Check Sizes
if: ${{ github.event_name == 'pull_request' && startsWith(github.head_ref, 'dependabot/npm_and_yarn/') }}
uses: preactjs/compressed-size-action@2.4.0
with:
repo-token: "${{ secrets.GITHUB_TOKEN }}"
pattern: "./dist/**/*"
compression: none
lint:
name: Lint
runs-on: ubuntu-latest
needs: [build]
steps:
- name: Checkout
uses: actions/checkout@v2.4.0
- name: Setup Node.js
uses: actions/setup-node@v3
with:
cache: "yarn"
- name: Install Dependencies
run: yarn install --frozen-lockfile
- name: Download Artifact
uses: actions/download-artifact@v2
with:
name: dist
path: dist
- name: Lint Code
run: yarn test:dist-lint
test:
timeout-minutes: 90
strategy:
fail-fast: false
matrix:
os:
- "ubuntu-latest"
- "macos-latest"
- "windows-latest"
node:
- "16.10.0"
- "14"
- "12"
- "10"
include:
- os: "ubuntu-latest"
node: "16.10.0"
FULL_TEST: true
exclude:
- os: "macos-latest"
node: "14"
- os: "macos-latest"
node: "12"
- os: "windows-latest"
node: "14"
- os: "windows-latest"
node: "12"
env:
FULL_TEST: ${{ matrix.FULL_TEST }}
name: Node.js ${{ matrix.node }} on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
needs: [build]
steps:
- name: Checkout
uses: actions/checkout@v2.4.0
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node }}
cache: "yarn"
- name: Config `ignore-engines=true` (Node.js 10)
if: ${{ matrix.node == '10' }}
run: yarn config set ignore-engines true
- name: Install Dependencies
run: yarn install --frozen-lockfile
- name: Download Artifact
uses: actions/download-artifact@v2
with:
name: dist
path: dist
- name: Run Tests (macOS)
if: ${{ matrix.os == 'macos-latest' }}
run: yarn test:dist --maxWorkers=4
- name: Run Tests (Linux and Windows)
if: ${{ matrix.os != 'macos-latest' }}
run: yarn test:dist --maxWorkers=2
- name: Run Tests (standalone) (macOS)
if: ${{ matrix.os == 'macos-latest' }}
run: yarn test:dist-standalone --maxWorkers=4
- name: Run Tests (standalone) (Linux and Windows)
if: ${{ matrix.os != 'macos-latest' }}
run: yarn test:dist-standalone --maxWorkers=2
# #8073 test
- name: Run Tests (PRETTIER_FALLBACK_RESOLVE)
run: yarn test "tests/integration/__tests__/(config|plugin)"
env:
NODE_ENV: production
PRETTIER_FALLBACK_RESOLVE: true