chore: test #5
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
## CD交付流水线 | |
## - 部署到Github Pages | |
## - 部署到Vercel托管平台 | |
## - 发布新的Github Release | |
## 参考资料:https://v2.vuepress.vuejs.org/zh/guide/deployment.html#github-pages | |
name: CD | |
on: | |
push: | |
branches: | |
- fix/vercel-CD | |
workflow_dispatch: | |
## vercel 环境变量 | |
env: | |
VERCEL_ORG_ID: ${{ secrets.VERCEL_ORG_ID }} | |
VERCEL_PROJECT_ID: ${{ secrets.VERCEL_PROJECT_ID }} | |
jobs: | |
install-init: | |
name: "依赖安装初始化" | |
runs-on: macos-latest | |
steps: | |
- name: Checkout Code | |
uses: actions/checkout@v4 | |
with: | |
persist-credentials: false | |
# “最近更新时间” 等 git 日志相关信息,需要拉取全部提交记录 | |
fetch-depth: 0 | |
- name: PNPM Install | |
uses: pnpm/action-setup@v2 | |
with: | |
version: 7 | |
run_install: | | |
args: ["--frozen-lockfile", "--registry=https://registry.npmmirror.com"] | |
- name: Install Node.js | |
uses: actions/setup-node@v3 | |
with: | |
node-version: 18.18.0 | |
## 淘宝镜像加速 | |
registry-url: 'https://registry.npmmirror.com' | |
cache: 'pnpm' | |
# - name: Install Dependencies | |
# run: | | |
# pnpm i --frozen-lockfile --registry https://registry.npmmirror.com | |
- name: Cache Dependencies | |
uses: actions/cache@v3 | |
with: | |
path: | | |
node_modules | |
key: ${{ runner.os }}-node_modules-${{ hashFiles('**/pnpm-lock.yaml') }} | |
## 部署到vercel平台 | |
deploy-vercel: | |
name: "部署到Vercel平台" | |
needs: | |
- install-init | |
runs-on: macos-latest | |
if: github.repository == '142vip/408CSFamily' | |
steps: | |
- name: Checkout Code | |
uses: actions/checkout@v4 | |
with: | |
persist-credentials: false | |
# “最近更新时间” 等 git 日志相关信息,需要拉取全部提交记录 | |
fetch-depth: 0 | |
- name: Restore Dependencies From cache | |
uses: actions/cache@v3 | |
with: | |
path: | | |
node_modules | |
key: ${{ runner.os }}-node_modules-${{ hashFiles('**/pnpm-lock.yaml') }} | |
## 支持思维导图转化 | |
- name: Build Mark-Map | |
run: | | |
./scripts/mark-map | |
- name: Pull Vercel Environment Information | |
run: npm i vercel -g && vercel pull --yes --environment=production --token=${{ secrets.VERCEL_TOKEN }} | |
## 注意:安装pnpm | |
- name: Build Project Artifacts | |
run: vercel build --prod --token=${{ secrets.VERCEL_TOKEN }} | |
- name: Deploy Project Artifacts to Vercel | |
run: vercel deploy --prebuilt --prod --token=${{ secrets.VERCEL_TOKEN }} | |
# ## 版本发布 | |
# release: | |
# name: "创建Github发布" | |
# runs-on: macos-latest | |
# needs: | |
# - install-init | |
# ## 主库master、next且执行release更新时执行 | |
# if: github.repository == '142vip/408CSFamily' && startsWith(github.event.head_commit.message, 'chore(release):') | |
# | |
# steps: | |
# - name: Checkout Code | |
# uses: actions/checkout@v4 | |
# with: | |
# persist-credentials: false | |
# # “最近更新时间” 等 git 日志相关信息,需要拉取全部提交记录 | |
# fetch-depth: 0 | |
# | |
# ## 支持思维导图转化 | |
# - name: Build Mark-Map | |
# run: | | |
# ./scripts/mark-map | |
# | |
# ### 打成压缩包 | |
# - name: Create Zip Package | |
# run: | | |
# zip -r 408CSFamily.zip . \ | |
# -x "node_modules/*" | |
# | |
# # 提取版本号 | |
# - name: Get New Version Number | |
# id: extract_version | |
# run: echo "::set-output name=version::$(node -p "require('./package.json').version")" | |
# | |
# # 创建发布版本 | |
# - name: Create New Release | |
# id: create_release | |
# uses: actions/create-release@latest | |
# env: | |
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
# with: | |
# tag_name: v${{ steps.extract_version.outputs.version }} | |
# release_name: v${{ steps.extract_version.outputs.version }} | |
# body: | | |
# Release ${{ steps.extract_version.outputs.version }} | |
# | |
# ### Features | |
# | |
# ### Bug Fixes | |
# | |
# ## 更新资源 | |
# - name: Upload Resource Assets | |
# uses: actions/upload-release-asset@latest | |
# env: | |
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
# with: | |
# upload_url: ${{ steps.create_release.outputs.upload_url }} | |
# asset_path: ./408CSFamily.zip | |
# asset_name: 408CSFamily.zip | |
# asset_content_type: application/zip |