|
@@ -0,0 +1,64 @@
|
|
|
+name: build and deploy
|
|
|
+
|
|
|
+# v3 分支 push 代码的时候触发
|
|
|
+on:
|
|
|
+ push:
|
|
|
+ branches:
|
|
|
+ - v3
|
|
|
+
|
|
|
+jobs:
|
|
|
+ push-to-gh-pages:
|
|
|
+ if: "contains(github.event.head_commit.message, '[release]')"
|
|
|
+ runs-on: ubuntu-latest
|
|
|
+ steps:
|
|
|
+ - name: Checkout
|
|
|
+ uses: actions/checkout@v2
|
|
|
+
|
|
|
+ - name: use Node.js 16
|
|
|
+ uses: actions/setup-node@v2.1.2
|
|
|
+ with:
|
|
|
+ node-version: '16.x'
|
|
|
+
|
|
|
+ - name: Get yarn cache
|
|
|
+ id: yarn-cache
|
|
|
+ run: echo "::set-output name=dir::$(yarn cache dir)"
|
|
|
+
|
|
|
+ - name: Cache dependencies
|
|
|
+ uses: actions/cache@v2
|
|
|
+ with:
|
|
|
+ path: ${{ steps.yarn-cache.outputs.dir }}
|
|
|
+ key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
|
|
|
+ restore-keys: |
|
|
|
+ ${{ runner.os }}-yarn-
|
|
|
+
|
|
|
+ - name: Set SSH Environment
|
|
|
+ env:
|
|
|
+ DOCS_DEPLOY_KEY: ${{ secrets.ACCESS_TOKEN }}
|
|
|
+ run: |
|
|
|
+ mkdir -p ~/.ssh/
|
|
|
+ echo "$ACCESS_TOKEN" > ~/.ssh/id_rsa
|
|
|
+ chmod 600 ~/.ssh/id_rsa
|
|
|
+ ssh-keyscan github.com > ~/.ssh/known_hosts
|
|
|
+ chmod 700 ~/.ssh && chmod 600 ~/.ssh/*
|
|
|
+ git config --local user.email "502431556@qq.com"
|
|
|
+ git config --local user.name "kailong321200875"
|
|
|
+
|
|
|
+ - name: Delete gh-pages branch
|
|
|
+ run: |
|
|
|
+ git push origin --delete gh-pages
|
|
|
+
|
|
|
+ - name: Build
|
|
|
+ run: |
|
|
|
+ yarn install
|
|
|
+ yarn run build
|
|
|
+ touch dist/.nojekyll
|
|
|
+ cp dist/index.html dist/404.html
|
|
|
+
|
|
|
+ - name: Deploy
|
|
|
+ uses: peaceiris/actions-gh-pages@v2.5.0
|
|
|
+ env:
|
|
|
+ ACTIONS_DEPLOY_KEY: ${{secrets.ACCESS_TOKEN}}
|
|
|
+ PUBLISH_BRANCH: gh-pages
|
|
|
+ PUBLISH_DIR: ./dist-pro
|
|
|
+ with:
|
|
|
+ forceOrphan: true
|