GitHub Action
官方文档:https://docs.github.com/zh/actions/learn-github-actions/understanding-github-actions
本文档使用的workflow
name: 部署文档
on:
push:
branches:
# 当以下分支被push时触发workflow
- main
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: 安装 pnpm
uses: pnpm/action-setup@v2
with:
# run_install: true
# 指定版本
version: 8.15.1
- name: 设置 Node.js
uses: actions/setup-node@v3
with:
# 指定版本
node-version: 18
cache: pnpm
- name: 下载依赖
run: pnpm install --no-frozen-lockfile
- name: 构建文档
env:
NODE_OPTIONS: --max_old_space_size=8192
run: |-
pnpm run docs:build
> src/.vuepress/dist/.nojekyll
- name: 部署文档
uses: s0/git-publish-subdir-action@develop
env:
# 目标仓库
REPO: git@github.com:MaHe666/doc.git
# 目标分支
BRANCH: main
# 提交文件夹内的文件
FOLDER: src/.vuepress/dist
# 指定使用secrets中的密钥名
SSH_PRIVATE_KEY: ${{ secrets.DEPLOY_PRIVATE_KEY }}
pnpm和nodejs必须指定版本号
SSH_PRIVATE_KEY
的值调用的是 本仓库
内的secrets
这个密钥的配置方式如下
- 配置ssh公钥和密钥
- 将密钥填写至上图所示的值中
- 将公钥填写至GitHub账号配置中
注意: 本人的提交库和目标库都填写了ssh密钥
git-publish-subdir-action: https://github.com/s0/git-publish-subdir-action
相关博客: