Skip to content

build: 建立发版机制(CI + Release workflow + 版本管理) - #5

Merged
henry-hub merged 2 commits into
mainfrom
feat/release-mechanism
Aug 23, 2026
Merged

henry-hub merged 2 commits into
mainfrom
feat/release-mechanism

Conversation

@henry-hub

Copy link
Copy Markdown
Member

变更概要

agents 仓库此前零 CI、零 tag、零 release,且 settings 插件引用仅存在于本地 mavenLocal 的 agent-SNAPSHOT——CI 环境根本无法解析。本 PR 建立完整发版机制。

变更内容

  • settings 插件:agent-SNAPSHOT → 2.0.0-m2(已发布到 Gradle Plugin Portal;ihub-settings 不在 Maven Central,仅 Portal)
  • 依赖:ihub-migrate 0.2.4 → 0.2.5(Java 17 基线修复版)
  • 版本管理:根构建显式 allprojects { version = "0.1.0" }(应用版本,对应 git tag v0.1.0;bootJar 产物 mcp-server-0.1.0.jar)
  • gradle-build.yml:push/PR 触发 build + test(JDK 21,action 全 pin,harden-runner 加固)
  • gradle-release.yml:release published 触发 → bootJar → 附到 GitHub Release(应用仓库不发布 Maven Central)

发版流程(合并后)

  1. gh release create v0.1.0 --target main
  2. Release workflow 自动构建并附上 mcp-server-0.1.0.jar(约 34 MB 可执行 fat jar)
  3. 后续发版:bump build.gradle.kts 版本 → PR 合并 → tag/release

本地验证

  • ./gradlew build ✓(2.0.0-m2 settings + 0.2.5 migrate 兼容)
  • ./gradlew :mcp-server:bootJar ✓ 产物名验证

注:分支直接推 ihub-pub/agents(本仓库 origin 即官方仓库,main 保护不限制功能分支推送)

- settings 插件 agent-SNAPSHOT -> 2.0.0-m2(已发布到 Gradle Plugin Portal;
  agent-SNAPSHOT 仅存在于本地 mavenLocal,CI 无法解析)
- ihub-migrate 0.2.4 -> 0.2.5
- 根构建显式版本 allprojects 0.1.0(应用版本,对应 git tag v0.1.0)
- 新增 gradle-build.yml:push/PR 触发 build + test(JDK 21,此前仓库零 CI)
- 新增 gradle-release.yml:release published 触发 bootJar 附到 GitHub Release
  (应用仓库不发布 Maven Central)
Copilot AI lite review requested due to automatic review settings August 23, 2026 13:04
@ihub-bot ihub-bot Bot added this to the 0.1.0 milestone Aug 23, 2026

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

该 PR 为 ihub-agents 仓库补齐 CI 与发版闭环:将 settings 插件从本地 SNAPSHOT 切到可在 CI 解析的已发布版本,并新增 GitHub Actions 工作流用于持续构建/测试与 Release 附件产物上传,同时在构建中引入应用版本号以对齐 git tag / release。

Changes:

  • 将 pub.ihub.plugin.ihub-settings 从 agent-SNAPSHOT 更新到 2.0.0-m2,消除 CI 无法解析本地依赖的问题
  • 依赖版本更新:ihub-migrate 0.2.4 → 0.2.5
  • 新增 CI 工作流(build/test)与 release 工作流(bootJar 并上传到 GitHub Release),并在根构建设置 allprojects 版本

Reviewed changes

Copilot reviewed 4 out of 5 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
settings.gradle.kts settings 插件版本切换到可发布版本,支持 CI 环境解析
gradle/libs.versions.toml 升级 ihub-migrate 版本以匹配新的基线修复
build.gradle.kts 在根构建设置应用版本号以对齐 tag/release 产物命名
.github/workflows/gradle-build.yml 新增 push/PR 的构建与测试工作流(含 runner hardening)
.github/workflows/gradle-release.yml 新增 release published 触发的 bootJar 构建与 Release 附件上传
Suppressed comments (1)

.github/workflows/gradle-build.yml:52

  • 同上:actions/setup-java 建议使用 distribution: temurin 替代 adopt。
        uses: actions/setup-java@b6effb05e454b25005698d916606bdc6ffcbf961 # v5.7.0
        with:
          java-version: '21'
          distribution: 'adopt'
          cache: 'gradle'

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment on lines +2 to +4
on:
release:
types: published
Comment on lines +31 to +35
- name: Build with Gradle
uses: gradle/gradle-build-action@ac2d340dc04d9e1113182899e983b5400c17cda1 # v2.11.0
with:
arguments: build --scan

Comment on lines +23 to +26
with:
java-version: '21'
distribution: 'adopt'
cache: 'gradle'
Comment on lines +23 to +26
with:
java-version: '21'
distribution: 'adopt'
cache: 'gradle'
@henry-hub
henry-hub merged commit db5065c into main Aug 23, 2026
4 checks passed
@henry-hub
henry-hub deleted the feat/release-mechanism branch August 23, 2026 13:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants