Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

HugeGraph Version Release Guide

Jermy Li edited this page Dec 22, 2021 · 2 revisions

HugeGraph 发版流程

0. 整体流程

  1. Release Notes 整理
  2. 工具链组件版本适配,包括:loader、tools、hubble 等依赖 client 的组件
  3. 发布 Jar 包,包括:common、client 、server、loader 等可能需要被其它组件依赖的库
  4. 上传 Tar 包,包括:server:loader、tools、hubble 等二进制发布包
  5. 文档适配,主要包括:更改 API 、新增功能、更改配置项引入的文档适配
  6. 文档链接更新,主要包括:下载链接更新、Release Notes 链接更新

1. Release Notes 整理

将 Release Notes 整理好,添加到 hugegraph-doc 项目的 changelog 目录下。

可参考0.11版更改:https://github.com/hugegraph/hugegraph-doc/pull/56

2. 工具链组件版本适配

因为 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

3. 发布 Jar 包

发布 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

4. 上传 Tar 包

上传 Tar 包到 GitHub Releases 页面,目的是为了方便最终用户可以直接下载/安装官方二进制发布包,无需用户通过源码编译安装。 Tar 包可通过 mvn clean package -DskipTests 命令生成然后手动上传,也可利用自动化发布流程一键发布。

上传地址:https://github.com/hugegraph/hugegraph/releases (其它项目需要依赖仓库地址而变)

5. 文档适配

5.1 更改 API 、新增功能等引入的文档适配

参考0.11版更改:https://github.com/hugegraph/hugegraph-doc/pull/57

5.2 更改配置项引入的文档适配

配置项的更改可通过 Diff 两个版本之间的差异来快速更新,具体操作步骤如下:

  1. 使用 git 分别切换到最新版本和上一个版本。
  2. 执行 ConfDumper 输出配置文件,比如分别得到hugegraph-0.11.properties.defaulthugegraph-0.12.properties.default
  3. 对比两次输出的配置文件,diff hugegraph-0.11.properties.default hugegraph-0.12.properties.default.
  4. 将对比之后的配置项变更,更新到 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

6. 文档链接更新

文档更新主要是指下载页的链接更新、Release Notes 链接更新,包括将 GitHub Releases 页面最新的下载链接更新到 hugegraph-doc 项目的 download.md 文件。

可参考0.11版更改:https://github.com/hugegraph/hugegraph-doc/pull/58

Clone this wiki locally

AltStyle によって変換されたページ (->オリジナル) /