新增 dev.yaml 工作流文件
All checks were successful
Checking-doc / check-file-changes (pull_request) Successful in 20s
Checking-doc / build-and-deploy (pull_request) Successful in 2m41s
deploying-doc / build-and-deploy (pull_request) Successful in 2m32s

This commit is contained in:
狮子耗耗 2025-04-26 21:31:33 +08:00
parent 448cd955ac
commit 2bfb673998

View File

@ -0,0 +1,74 @@
name: Checking-doc
run-name: Checking doc — ${{ gitea.run_id }}
on:
workflow_dispatch:
pull_request:
types: [opened,synchronize]
jobs:
check-file-changes:
runs-on: ubuntu-latest
outputs:
should_run: ${{ steps.filter.outputs.should_run }}
steps:
- name: 🚚 Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: 📑 Check changed files
id: filter
run: |
CHANGED_FILES=$(git diff --name-only ${{ github.event.pull_request.base.sha }} ${{ github.event.pull_request.head.sha }} || git diff --name-only HEAD~1 HEAD)
IMPORTANT_FILE_CHANGED=false
for file in $CHANGED_FILES; do
if [[ $file =~ \.(ts|yaml|json|js|scss)$ ]]; then
IMPORTANT_FILE_CHANGED=true
break
fi
done
if [ "$IMPORTANT_FILE_CHANGED" = true ]; then
echo "should_run=true" >> $GITHUB_OUTPUT
else
echo "should_run=false" >> $GITHUB_OUTPUT
fi
build-and-deploy:
needs: check-file-changes
if: ${{ needs.check-file-changes.outputs.should_run == 'true' || github.event_name == 'workflow_dispatch' }}
runs-on: ubuntu-latest
permissions:
contents: read
deployments: write
steps:
- name: 🚚 Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: pnpm/action-setup@v4
name: 🔧Install pnpm
with:
version: 10
run_install: false
- name: 🔧Install Node.js
uses: actions/setup-node@v4
with:
node-version: 20
cache: 'pnpm'
- name: 🔧Install dependencies
run: pnpm install
- name: 🔴Build doc
run: pnpm run docs:build
- name: 🚀 Deploy to Cloudflare Pages
uses: cloudflare/wrangler-action@v3
with:
apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }}
accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
command: pages deploy ./src/.vuepress/dist --project-name=jingji-reference