Skip to content

release: prepare tag-derived package publishing pipeline#189

Merged
liujuanjuan1984 merged 2 commits intomainfrom
ops/issues-178-188-release-strategy-eval
Mar 17, 2026
Merged

release: prepare tag-derived package publishing pipeline#189
liujuanjuan1984 merged 2 commits intomainfrom
ops/issues-178-188-release-strategy-eval

Conversation

@liujuanjuan1984
Copy link
Collaborator

变更概览

本 PR 聚焦发布准备,先把 tag 派生版本、包构建与发布流水线打通,并补齐发布前的 wheel 安装 smoke test。

当前范围是“为正式发布做准备”,不是 #178 / #188 的最终收口,因此本 PR 只做关联,不在这里关闭 issue。

按模块说明

1. 打包与版本元数据

  • pyproject.toml 中补齐标准 build-system
  • 引入 setuptools-scm,让包版本从 vX.Y.Z tag 动态派生
  • 移除手工静态版本号,避免每次发布前单独 bump 版本提交
  • 让运行时 a2a_version 默认跟随已安装包版本

2. 发布流水线

  • 新增 tag 驱动的 Publish workflow
  • 在发布前校验构建出的 wheel 版本与 tag 一致
  • 发布成功后上传 PyPI,并同步创建 GitHub Release

3. CI 与 smoke test

  • 新增 scripts/smoke_test_built_cli.sh
  • 统一验证“本地构建 wheel -> uv tool install -> 启动 CLI -> 访问 /health”这条最小可安装路径
  • 让常规 CI 和发布 workflow 复用同一套 smoke test,避免只在打 tag 时才暴露安装问题

4. 测试与验证

已在本地完成:

  • uv run pre-commit run --all-files
  • uv run pytest
  • uv build --no-sources
  • bash ./scripts/smoke_test_built_cli.sh

相关提交

  • dc07925 [ops] adopt tag-derived release tooling #178 #188
  • 1de78a5 ci: validate built wheel install path before publish #178 #188

与 issue 的关系

说明:

  • 本 PR 解决的是“发布准备”这一前置阶段
  • 还没有完成 #178 中 bootstrap/default trust entry 的全面收口
  • 也还没有完成 #188 中 README/用户安装入口/发布后使用路径的全部文档收口
  • 待正式发布完成后,再继续推进剩余部分,并视实际完成度决定后续 PR 是否 Closes #178 / Closes #188

@liujuanjuan1984 liujuanjuan1984 marked this pull request as ready for review March 17, 2026 11:03
@liujuanjuan1984 liujuanjuan1984 merged commit abf98ee into main Mar 17, 2026
3 checks passed
@liujuanjuan1984 liujuanjuan1984 deleted the ops/issues-178-188-release-strategy-eval branch March 17, 2026 11:04
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.

1 participant