发布检查清单
这页是维护者发布 AIHub 到 Maven Central 和 GitHub Release 前后的最小检查清单。
版本策略
AIHub 当前采用 全模块同号发布:
- 发布版:所有发布模块使用同一个稳定版本,例如
1.0.0 - 开发分支:所有 Maven POM 使用下一个
SNAPSHOT,例如1.0.1-SNAPSHOT - README / docs 示例:写最新已发布稳定版,不写
SNAPSHOT
只改 README、docs-site 或 demo 时,不需要发布新的 Maven 版本。
发布前
- 确认当前分支干净并从
main切出 release 修复分支。 - 把所有 Maven POM 从
*-SNAPSHOT改成同一个 release 版本。 - 同步 README、README-EN 和 docs-site 里的用户安装版本。
- 确认
aihub-bom覆盖需要对齐的发布模块。 - 确认
centralprofile 不发布聚合根aihub-sdk。 - 确认仓库 Actions Secrets 已配置
MAVEN_CENTRAL_USERNAME/MAVEN_CENTRAL_PASSWORD/MAVEN_GPG_PRIVATE_KEY/MAVEN_GPG_PASSPHRASE(与 quick-sms 相同)。 - 确认 GPG 私钥可签名(CI 使用
--pinentry-mode loopback)。
本地验证
mvn -DskipTests package
mvn -Pcentral -DskipTests clean verify
如果修改 docs-site:
npm --prefix docs-site ci
npm --prefix docs-site run build
发布
推送 release-x.y.z(例如 release-1.0.0)会跑 publish-maven-central.yml:mvn -Pcentral clean deploy,autoPublish 等到 Central PUBLISHED。
本地:
mvn -Pcentral -DskipTests clean deploy
发布后验证
- Maven Central deployment 状态为
PUBLISHED。 maven-metadata.xml的latest和release等于本次版本。- 主模块的
pom、jar、sources、javadoc和.asc可下载。 - 发布模块是
aihub与aihub-spring-boot-starter(外加 BOM)。 - 创建 GitHub tag / Release,说明版本变化和 Maven 坐标。
- 新分支把所有 Maven POM bump 到下一个
SNAPSHOT并合回main。
收口
- 删除已合并 release / bump 分支。
- 确认本地
main与origin/main对齐。 - HA task 记录 deployment id、GitHub release URL、验证命令和残余风险。