-
Notifications
You must be signed in to change notification settings - Fork 100
HugeGraph Version Release Guide
- Release Notes 整理
- 工具链组件版本适配,包括:loader、tools、hubble 等依赖 client 的组件
- 发布 Jar 包,包括:common、client 、server、loader 等可能需要被其它组件依赖的库
- 上传 Tar 包,包括:server:loader、tools、hubble 等二进制发布包
- 文档适配,主要包括:更改 API 、新增功能、更改配置项引入的文档适配
- 文档链接更新,主要包括:下载链接更新、Release Notes 链接更新
将 Release Notes 整理好,添加到 hugegraph-doc 项目的 changelog 目录下。
可参考0.11版更改:https://github.com/hugegraph/hugegraph-doc/pull/56
因为 server 新增功能或更改 API,会导致工具链组件需要进行适配升级,包括 loader、tools、studio/hubble 等依赖 的组件均需要更新使用最新的 client 并进行相应的适配。
适配时,被依赖的组件需要先进行适配,各组件的依赖关系如下:
- server 依赖 common
- client 依赖 common,并且 client 逻辑依赖 server
- loader、tools、studio 均依赖 client
- hubble、computer 依赖 loader
因此适配的先后关系大概是这样的:common -> server -> client -> loader / tools / studio -> hubble / computer
可参考0.11版更改:
loader:https://github.com/hugegraph/hugegraph-loader/pull/173
tools:https://github.com/hugegraph/hugegraph-tools/pull/69/files
studio:https://github.com/hugegraph/hugegraph-studio/pull/51
发布 Jar 包到 Maven 中央仓库,目的是为了方便依赖该库的组件可以方便的引入 Jar 包。HugeGraph 中的 common、client 、server、loader 等可能需要被其它组件依赖的库,涉及发布 Jar 包。比如 common 包被发布到:
https://mvnrepository.com/artifact/com.baidu.hugegraph/hugegraph-common
目前 CI 从 travis 迁移到 github action 之后,可能自动化发布流程需要进行一些调整适配,具体见:
https://github.com/hugegraph/hugegraph/blob/master/.github/workflows/release.yml
https://github.com/hugegraph/hugegraph/blob/master/.travis.yml
上传 Tar 包到 GitHub Releases 页面,目的是为了方便最终用户可以直接下载/安装官方二进制发布包,无需用户通过源码编译安装。 Tar 包可通过 mvn clean package -DskipTests
命令生成然后手动上传,也可利用自动化发布流程一键发布。
上传地址:https://github.com/hugegraph/hugegraph/releases (其它项目需要依赖仓库地址而变)
参考0.11版更改:https://github.com/hugegraph/hugegraph-doc/pull/57
配置项的更改可通过 Diff 两个版本之间的差异来快速更新,具体操作步骤如下:
- 使用 git 分别切换到最新版本和上一个版本。
- 执行 ConfDumper 输出配置文件,比如分别得到
hugegraph-0.11.properties.default
、hugegraph-0.12.properties.default
。 - 对比两次输出的配置文件,
diff hugegraph-0.11.properties.default hugegraph-0.12.properties.default
. - 将对比之后的配置项变更,更新到 hugegraph-doc 项目的 config/config-option.md 文件中。
输出配置文件:执行 ConfDumper 可以输出最新的配置文件,传入一个配置文件路径(比如hugegraph.properties),会在输入配置文件所在目录生成一个完整的输出配置文件(比如hugegraph.properties.default):
# path: /hugegraph-dist/src/main/java/com/baidu/hugegraph/cmd/ConfDumper.java
ConfDumper /etc/hugegraph/hugegraph.properties
可参考0.11版更改:https://github.com/hugegraph/hugegraph-doc/pull/59
文档更新主要是指下载页的链接更新、Release Notes 链接更新,包括将 GitHub Releases 页面最新的下载链接更新到 hugegraph-doc 项目的 download.md 文件。
可参考0.11版更改:https://github.com/hugegraph/hugegraph-doc/pull/58
Documentation license here.