Skip to content

chore(release): prepare v1.2.1-beta #11

chore(release): prepare v1.2.1-beta

chore(release): prepare v1.2.1-beta #11

Workflow file for this run

name: Release Gate
# ⚠️ 本工作流**不创建 Release**,只做发布前的前端校验。
#
# 真正的 Release 由**中间件仓库**(闭源)的 release 工作流驱动:
# 它拿不到本仓库以外的 Go 源码,反过来说本仓库的 CI 也构建不出中间件 exe。
# 所以由那边统一构建「前端 + 后端」,再把两样产物一起传到本仓库的 Release。
#
# 发布流程:在中间件仓库打 v* tag
# → 它检出本仓库的前端源码并构建 dist
# → 把 dist 嵌进 exe、跑冒烟测试
# → 在本仓库创建 Release,上传 exe + 开箱即用 zip + 前端 dist zip
#
# 这里只保证「打了 tag 的这份前端确实构建得出来」,
# 免得等到那边构建时才发现前端是坏的。
on:
push:
tags: ['v*']
workflow_dispatch:
permissions:
contents: read
jobs:
verify:
name: 发布前前端校验
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '22'
cache: npm
- name: 安装依赖
run: npm ci
- name: 版本同步校验
run: node scripts/check-version-sync.mjs
- name: 类型检查
run: npm run typecheck
- name: 生产构建
run: npm run build
- name: 确认 tag 与 package.json 版本一致
shell: bash
run: |
TAG_VERSION="${GITHUB_REF_NAME#v}"
PKG_VERSION=$(node -p "require('./package.json').version")
if [ "$TAG_VERSION" != "$PKG_VERSION" ]; then
echo "tag ($TAG_VERSION) 与 package.json ($PKG_VERSION) 版本不一致" >&2
exit 1
fi
echo "版本一致:$PKG_VERSION"
- name: 提示后续步骤
run: |
echo "前端校验通过。请在中间件仓库打同名 tag 以产出并发布完整 Release。"