返回

Github Action:PNPM单仓库文档包部署成Github Page

前端




前言

最近需要将一个前端工程移交出去给其他小伙伴接手。因为这个工程一直在内部孵化,除了少数维护的几个人可能知根知底,对于其他人来说,这个工程可能一片空白。因此,我们需要提供一个文档体系来辅助其他小伙伴上手。

我们将采用 Docu 来维护文档,因为它具有以下优点:

  • 基于 Markdown,易于编写和维护。
  • 支持多种格式,包括 HTML、PDF、Word 和 ePub。
  • 可以生成在线文档网站,方便访问和分享。

安装 Docu

在开始部署文档之前,我们需要先安装 Docu。Docu 的安装非常简单,只需在命令行中输入以下命令即可:

npm install -g docu

初始化 Docu 项目

安装 Docu 后,我们就可以初始化一个 Docu 项目了。在项目根目录下,执行以下命令:

docu init

这将创建一个名为 .docu 的目录,其中包含 Docu 的配置文件和一些其他文件。

编写文档

现在,我们可以开始编写文档了。在 .docu 目录下,创建一个名为 docs 的目录,用于存放文档文件。在 docs 目录下,创建一个名为 index.md 的文件,作为文档的首页。

index.md 文件中,我们可以使用 Markdown 语法编写文档。Docu 支持多种 Markdown 扩展,可以让我们轻松地创建丰富的文档内容。

部署文档

当我们编写好文档后,就可以将其部署到 Github Page 上了。Github Page 是 Github 提供的免费静态网站托管服务,我们可以轻松地将我们的文档网站部署到 Github Page 上。

要在 Github Page 上部署文档,我们需要先在 Github 上创建一个仓库。然后,在仓库的根目录下,创建一个名为 docs 的分支。最后,将 docs 目录下的所有文件提交到 docs 分支上。

提交完成后,Github Page 会自动将我们的文档网站部署到 https://<username>.github.io/<repository-name> 上。

使用 Github Action 自动化部署

为了方便地维护和更新文档,我们可以使用 Github Action 来自动化部署文档。Github Action 是 Github 提供的持续集成和持续交付服务,我们可以使用它来定义和执行各种自动化任务。

要在 Github Action 中自动化部署文档,我们需要创建一个名为 .github/workflows 的目录,并在其中创建一个名为 deploy.yml 的文件。在 deploy.yml 文件中,我们可以使用 YAML 语法定义我们的部署任务。

name: Deploy Docs

on:
  push:
    branches:
      - docs

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2

      - name: Install Docu
        run: npm install -g docu

      - name: Generate Docs
        run: docu build

      - name: Deploy Docs to Github Pages
        uses: JamesIves/github-pages-deploy-action@3.7.1
        with:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
          BRANCH: gh-pages
          FOLDER: docs/.docu/public

在这个工作流中,我们定义了一个名为 deploy 的任务,该任务将在每次 docs 分支被推送时触发。在该任务中,我们首先使用 actions/checkout@v2 操作检出仓库代码。然后,使用 npm install -g docu 操作安装 Docu。接着,使用 docu build 操作生成文档。最后,使用 JamesIves/github-pages-deploy-action@3.7.1 操作将文档部署到 Github Page 上。

结语

通过使用 Docu 和 Github Action,我们可以轻松地将 PNPM 单仓库中的文档包部署到 Github Page 上。这样,我们就可以方便地维护和访问项目文档,从而提高项目的可维护性。