chore(CHANGELOG): update #42
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: | |
- master | |
- next | |
workflow_dispatch: | |
# 环境变量 | |
env: | |
## vercel | |
VERCEL_ORG_ID: ${{ secrets.VERCEL_ORG_ID }} | |
VERCEL_PROJECT_ID: ${{ secrets.VERCEL_PROJECT_ID }} | |
jobs: | |
## 部署到Github-Pages | |
deploy-github: | |
name: "部署到Github-Pages" | |
if: github.repository == '142vip/JavaScriptCollection' | |
runs-on: ubuntu-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] | |
# 安装Node环境 | |
- name: Install Node.js | |
uses: actions/setup-node@v3 | |
with: | |
node-version: 18.18.0 | |
## 淘宝镜像加速 | |
registry-url: 'https://registry.npmmirror.com' | |
- name: Install Dependencies | |
run: | | |
./scripts/ci | |
# 运行构建脚本 | |
- name: Build VuePress Site | |
run: | | |
./scripts/bundle build_proxy | |
## 部署到Github Pages | |
- name: Deploy To GitHub Page | |
uses: crazy-max/ghaction-github-pages@v3 | |
with: | |
target_branch: pages/github | |
build_dir: docs/.vuepress/dist | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
## 部署到vercel平台 | |
# deploy-vercel: | |
# name: "部署到Vercel平台" | |
# needs: install-init | |
# runs-on: ubuntu-latest | |
# if: github.repository == '142vip/JavaScriptCollection' | |
# steps: | |
# - name: Checkout Code | |
# uses: actions/checkout@v3 | |
# with: | |
# 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: Pull Vercel Environment Information | |
# run: vercel pull --yes --environment=production --token=${{ secrets.VERCEL_TOKEN }} | |
# | |
# ## 注意:安装pnpm | |
# - name: Build Project Artifacts | |
# run: npm i pnpm@7 -g && 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: ubuntu-latest | |
## 主库master、next且执行release更新时执行 | |
if: github.repository == '142vip/JavaScriptCollection' && 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: Create Zip Package | |
run: | | |
zip -r JavaScriptCollection.zip . \ | |
-x "node_modules/*" \ | |
-x ".git/*" | |
# 提取版本号 | |
- 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: ./JavaScriptCollection.zip | |
asset_name: JavaScriptCollection.zip | |
asset_content_type: application/zip | |
# Deploy-ESC: | |
# name: "部署到ESC服务器" | |
# needs: install-init | |
# runs-on: ubuntu-latest | |
# ## 主库master、next且执行release更新时执行 | |
# if: github.repository == '142vip/JavaScriptCollection' && startsWith(github.event.head_commit.message, 'chore(release):') | |
# | |
# steps: | |
# - name: Checkout repository | |
# uses: actions/checkout@v3 | |
# | |
# - name: Get Current Version | |
# id: version | |
# uses: ashley-taylor/[email protected] | |
# with: | |
# path: ./package.json | |
# property: version | |
# | |
# # 拉取镜像,更新服务 | |
# - name: Pull Image And Update ESC | |
# uses: appleboy/ssh-action@master | |
# with: | |
# host: ${{ secrets.SERVER_HOST }} | |
# port: ${{ secrets.SERVER_PORT }} | |
# username: ${{ secrets.SERVER_USERNAME }} | |
# password: ${{ secrets.SERVER_PASSWORD }} | |
# script: | | |
# docker images | |
# echo "-----------正在运行的服务--------" | |
# docker ps | |
# cd /service_env/ && git reset --hard && git pull origin main | |
# bash ./scripts/book_doc.deploy.sh jsc ${{steps.version.outputs.value}} |