Skip to main content

如何验证发布版本

下载候选版本

release_version 为即将发布的版本号,比如 1.4.0;rc_version 为 Releae Candidate,比如 RC0,RC1...;KEY_ID 是你创建的 GPG Key ID.

svn co https://dist.apache.org/repos/dist/dev/inlong/${release_version}-${rc_version}/

验证版本

查看发布包是否完整

  • 是否包含源码包
  • 是否包含源码包的签名和 sha512
  • 如果上传了二进制包,则同样检查的签名和 sha512

检查 GPG 签名

  • 导入公钥
# 下载KEYS
curl https://downloads.apache.org/inlong/KEYS > KEYS
# 导入KEYS到本地
gpg --import KEYS
  • 信任公钥 替换 THE_KEY_USED 为此次版本所使用的 KEY。
# 执行后依次输入 trust -> 5(I trust ultimately) -> Y(Yes) -> quit
gpg --edit-key THE_KEY_USED
  • 使用如下命令检查签名
cd ${release_version}-${rc_version}
for i in *.tar.gz; do echo $i; gpg --verify $i.asc $i ; done
备注

如果出现 Good signature 关键字,则说明签名正确。

检查源码包的文件内容

解压缩 apache-inlong-${release_version}-src.tar.gz,进行如下检查:

  • LICENSE and NOTICE 文件是否存在及内容是否正确
  • 所有文件是否带有 ASF License 头
  • 源码是否能够正常编译
  • 单测是否能够跑通
备注

可以通过 mvn clean package install -DskipTests && mvn test 检查编译和单测,如果编译失败,先清理掉本地仓库。

检查二进制包

解压缩 apache-inlong-${release_version}-bin.tar.gz, 以及对应 Flink 版本的 Sort Connector,进行如下检查:

  • LICENSE and NOTICE 文件是否存在及内容是否正确
  • 能否正常部署成功
  • 部署测试环境、验证生产消费能否正常运行
  • 验证你认为可能会出问题的地方

回复邮件

如果验证通过,可参考以下模板进行邮件回复。

+1 from me, and I checked the following items:
- [X] Download links are valid.
- [X] Checksums and PGP signatures are valid.
- [X] Source code artifacts have correct names matching the current release.
- [X] LICENSE and NOTICE files are correct for the repository.
- [X] All files have license headers if necessary.
- [X] No compiled archives bundled in the source archive.
- [X] Building is OK.