50 lines
1.6 KiB
YAML
50 lines
1.6 KiB
YAML
# CI:每次推送自动运行完整测试套件(本地与云端同一入口:node scripts/ci.mjs)
|
||
# 网络适配:服务器在国内,job 容器镜像走腾讯内网镜像源,npm/pnpm 走国内 registry
|
||
name: CI
|
||
on:
|
||
push:
|
||
pull_request:
|
||
|
||
jobs:
|
||
test:
|
||
name: 测试套件(协议/用户管理/单测/双设备/实时链路/构建)
|
||
runs-on: ubuntu-latest
|
||
container:
|
||
image: mirror.ccs.tencentyun.com/library/node:22-bookworm
|
||
steps:
|
||
- name: 检出代码
|
||
uses: actions/checkout@v4
|
||
|
||
- name: 安装 pnpm
|
||
run: npm install -g pnpm@11 --registry=https://registry.npmmirror.com
|
||
|
||
- name: 安装依赖
|
||
working-directory: intern-log
|
||
run: pnpm install --frozen-lockfile --registry=https://registry.npmmirror.com
|
||
|
||
- name: 运行测试与构建
|
||
env:
|
||
NODE_ENV: production
|
||
run: node scripts/ci.mjs
|
||
|
||
audit:
|
||
name: 依赖漏洞扫描(软性检查)
|
||
runs-on: ubuntu-latest
|
||
container:
|
||
image: mirror.ccs.tencentyun.com/library/node:22-bookworm
|
||
continue-on-error: true
|
||
steps:
|
||
- name: 检出代码
|
||
uses: actions/checkout@v4
|
||
|
||
- name: 安装 pnpm
|
||
run: npm install -g pnpm@11 --registry=https://registry.npmmirror.com
|
||
|
||
- name: 安装依赖
|
||
working-directory: intern-log
|
||
run: pnpm install --frozen-lockfile --registry=https://registry.npmmirror.com
|
||
|
||
- name: pnpm audit(高危及以上)
|
||
working-directory: intern-log
|
||
run: pnpm audit --prod --audit-level=high --registry=https://registry.npmmirror.com
|