Github 如何配置 PNPM 的 CI 环境

233 阅读1分钟

最近出于兴趣在写一个前端框架 echox,然后在 Github 上给它配置了最简单的 CI 环境,这里简单记录一下。

特殊目录

首先需要在项目根目录里面创建 Github 仓库中的一个特殊目录:.github/workflows,用于存放 Github Actions 的工作流配置文件。

image.png

添加 Action

这之后在该目录下新建一个名叫 test.yml 的文件,用于在 CI 流程中添加测试相关的 Action。

image.png

配置 Action

对于每一个 Action 的配置文件来说,主要有这么几个配置:

  • name:Action 的名字,会展现在 CI 面板之中
  • on:触发该 Action 的条件(时机)
  • jobs:执行的任务

因为 echox 使用 PNPM 开发的,所以我们需要在 CI 开始的时候安装 PNPM,完整的配置文件如下:

# .github/workflows/test.yml

name: Test # 任务名字

on: # 触发时机,提交或者期望合并到 main 分支的时候
  push:
    branches: [main]
  pull_request:
    branches: [main]

jobs: 
  test: # 只包含一个叫 test 的任务
    runs-on: ubuntu-latest # 指定任务运行环境
    steps:
      - uses: actions/checkout@v4 # 将目标分支 checkout 到运行环境
      - uses: actions/setup-node@v4 # 安装 node@20
        with:
          node-version: "20"
      - run: npm install -g pnpm # 安装 PNPM
      - run: pnpm install --frozen-lockfile # 根据 lock 文件安装依赖
      - run: pnpm run test # 运行测试

最后

如果一切顺利,将会得到如下的结果:

image.png

完整的代码在这里 #54,如果觉得不错的话可以给 echox 点一个 star!