验证 Apache 发布版本
可以按照以下步骤对发布版本进行验证:
- 下载链接是否合法。
- 校验值和 PGP 签名是否合法。
- 是否包含 DISCLAIMER-WIP。
- 代码是否和当前发布版本相匹配。
- LICENSE 和 NOTICE 文件是否正确。
- 所有文件都携带必要的协议说明。
- 在源码包中不包含已经编译好的内容。
- 编译是否能够顺利执行。
1. 下载源码包、签名文件、校验值文件和 KEYS
下载所有相关文件, 以 a.b.c-incubating 为示例:
wget https://www.apache.org/dyn/mirrors/mirrors.cgi?action=download&filename=/incubator/doris/a.b.c-incubating/apache-doris-a.b.c-incubating-src.tar.gz
wget https://www.apache.org/dist/incubator/doris/a.b.c-incubating/apache-doris-a.b.c-incubating-src.tar.gz.sha512
wget https://www.apache.org/dist/incubator/doris/a.b.c-incubating/apache-doris-a.b.c-incubating-src.tar.gz.asc
wget https://www.apache.org/dist/incubator/doris/KEYS
2. 检查签名和校验值
推荐使用 GunPG,可以通过以下命令安装:
CentOS: yum install gnupg
Ubuntu: apt-get install gnupg
gpg --import KEYS
gpg --verify apache-doris-a.b.c-incubating-src.tar.gz.asc apache-doris-a.b.c-incubating-src.tar.gz
sha512sum --check apache-doris-a.b.c-incubating-src.tar.gz.sha512
3. 验证源码协议头
推荐使用 Apache RAT 验证源码协议,可以从以下链接下载:
wget http://mirrors.tuna.tsinghua.edu.cn/apache/creadur/apache-rat-0.13/apache-rat-0.13-bin.tar.gz
tar zxvf apache-rat-0.13-bin.tar.gz
假设源码目录名称为 apache-doris-a.b.c-incubating-src,可以使用以下命令进行验证。 这个命令会产生一个文件,其中列举了所有非 ASF 协议的文件。
/usr/java/jdk/bin/java -jar apache-rat-0.13/apache-rat-0.13.jar -a -d apache-doris-a.b.c-incubating-src -E apache-doris-a.b.c-incubating-src/.rat-excludes
4. 验证编译
详细的编译步骤,请参阅 编译文档