element-plus/.github/workflows/pr-docs-build.yml

74 lines
1.7 KiB
YAML

name: PR Docs Build
on: pull_request
jobs:
build:
name: Build
runs-on: ${{ matrix.os }}
strategy:
matrix:
node-version: [16.x]
os: [ubuntu-latest, windows-latest]
fail-fast: false
env:
PULL_REQUEST_NUMBER: ${{ github.event.number }}
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup pnpm
uses: pnpm/action-setup@v2
- name: Setup node
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
cache: 'pnpm'
- name: Install dependencies
run: pnpm i --frozen-lockfile
- name: Generate common locale
run: pnpm docs:gen-locale
- name: Build Element Plus
run: pnpm build
env:
FORCE_COLOR: 2
- name: Build website
run: pnpm docs:build
env:
DOC_ENV: preview
- name: Move bundle to docs dist
if: matrix.os == 'ubuntu-latest'
run: mkdir docs/.vitepress/dist/bundle && mv dist/element-plus/dist/*.* docs/.vitepress/dist/bundle
# share website dist
- name: Upload artifact
if: matrix.os == 'ubuntu-latest'
uses: actions/upload-artifact@v3
with:
name: docs
path: docs/.vitepress/dist/
retention-days: 1
# write pr.txt for share
- name: Save pr number
if: matrix.os == 'ubuntu-latest'
run: echo ${PULL_REQUEST_NUMBER} > ./pr.txt
# share pr number
- name: Upload pr number
if: matrix.os == 'ubuntu-latest'
uses: actions/upload-artifact@v3
with:
name: pr
path: ./pr.txt
retention-days: 1