2022-03-12 17:17:16 +08:00
|
|
|
name: Build Product 👮♂️
|
|
|
|
|
|
|
|
on: pull_request
|
|
|
|
|
|
|
|
jobs:
|
|
|
|
check:
|
|
|
|
name: Build Product Check
|
|
|
|
runs-on: ubuntu-latest
|
2022-03-12 19:03:28 +08:00
|
|
|
|
2022-03-12 17:17:16 +08:00
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v3
|
|
|
|
with:
|
|
|
|
fetch-depth: 0
|
2022-03-12 19:03:28 +08:00
|
|
|
persist-credentials: false
|
2022-03-12 17:17:16 +08:00
|
|
|
|
|
|
|
- name: Add dev branch
|
|
|
|
run: git branch dev origin/dev
|
|
|
|
|
|
|
|
- name: Setup pnpm
|
|
|
|
uses: pnpm/action-setup@v2
|
|
|
|
with:
|
|
|
|
version: latest
|
|
|
|
|
|
|
|
- name: Setup node
|
|
|
|
uses: actions/setup-node@v3
|
|
|
|
with:
|
|
|
|
node-version: '16'
|
|
|
|
|
|
|
|
- name: Cache ~/.pnpm-store
|
|
|
|
uses: actions/cache@v2
|
|
|
|
env:
|
|
|
|
cache-name: cache-pnpm-store
|
|
|
|
with:
|
|
|
|
path: ~/.pnpm-store
|
|
|
|
key: ${{ runner.os }}-${{ matrix.node-version }}-test-${{ env.cache-name }}-${{ hashFiles('**/pnpm-lock.yaml') }}
|
|
|
|
restore-keys: |
|
|
|
|
${{ runner.os }}-${{ matrix.node-version }}-test-${{ env.cache-name }}-
|
|
|
|
${{ runner.os }}-${{ matrix.node-version }}-test-
|
|
|
|
${{ runner.os }}-
|
|
|
|
|
|
|
|
- name: Install dependencies
|
|
|
|
run: pnpm i --frozen-lockfile
|
|
|
|
|
|
|
|
- name: Local build
|
|
|
|
run: pnpm build
|
|
|
|
|
|
|
|
- name: Check build product
|
|
|
|
run: sh -c ./scripts/file-check.sh
|
|
|
|
|
|
|
|
- name: Diff gen
|
|
|
|
run: pnpm diff:table
|
2022-03-12 19:03:28 +08:00
|
|
|
env:
|
|
|
|
THRESHOLD: 50
|
2022-03-12 17:17:16 +08:00
|
|
|
|
|
|
|
- name: Read diff file
|
|
|
|
id: diff
|
|
|
|
uses: juliangruber/read-file-action@v1
|
|
|
|
with:
|
|
|
|
path: ./tmp/diff.md
|
|
|
|
|
2022-03-12 19:03:28 +08:00
|
|
|
- uses: actions-cool/check-user-permission@v2
|
|
|
|
id: isTeamMember
|
|
|
|
with:
|
|
|
|
require: 'write'
|
|
|
|
username: ${{ github.event.pull_request.user.login }}
|
|
|
|
|
2022-03-12 17:17:16 +08:00
|
|
|
- name: Set comment
|
|
|
|
uses: actions-cool/maintain-one-comment@v2.0.2
|
2022-03-13 00:07:50 +08:00
|
|
|
if: steps.isTeamMember.outputs.require-result == 'true' && steps.diff.outputs.content != ''
|
2022-03-12 17:17:16 +08:00
|
|
|
with:
|
|
|
|
token: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
body: ${{ steps.diff.outputs.content }}
|
|
|
|
body-include: '<sub>Generated with'
|
2022-03-12 19:03:28 +08:00
|
|
|
|
|
|
|
- name: Echo comment
|
|
|
|
if: steps.isTeamMember.outputs.require-result == 'false'
|
|
|
|
run: |
|
|
|
|
echo 'Error: compressed-size-action was unable to comment on your PR.'
|
|
|
|
echo 'This can happen for PR's originating from a fork without write permissions.'
|
|
|
|
echo ${{ steps.diff.outputs.content }}
|