-
Notifications
You must be signed in to change notification settings - Fork 3.3k
How to verify Apache Release
To verify the release, following checklist can used to reference:
- Download links are valid.
- Checksums and PGP signatures are valid.
- DISCLAIMER is included.
- Source code artifacts have correct names matching the current release.
- LICENSE and NOTICE files are correct for the repository.
- All files have license headers if necessary.
- No compiled archives bundled in source archive.
- Building is OK.
Download all artifacts, take 0.9.0-incubating-rc01 as an example:
wget https://dist.apache.org/repos/dist/dev/incubator/doris/0.9.0-incubating-rc01/apache-doris-0.9.0.rc01-incubating-src.tar.gz
wget https://dist.apache.org/repos/dist/dev/incubator/doris/0.9.0-incubating-rc01/apache-doris-0.9.0.rc01-incubating-src.tar.gz.sha512
wget https://dist.apache.org/repos/dist/dev/incubator/doris/0.9.0-incubating-rc01/apache-doris-0.9.0.rc01-incubating-src.tar.gz.asc
wget https://dist.apache.org/repos/dist/dev/incubator/doris/KEYS
GnuPG is recommended, which can install by yum install gnupg or apt-get install gnupg.
gpg --import KEYS
gpg --verify apache-doris-0.9.0.rc01-incubating-src.tar.gz.asc apache-doris-0.9.0.rc01-incubating-src.tar.gz
sha512sum --check apache-doris-0.9.0.rc01-incubating-src.tar.gz.sha512
Apache RAT is recommended to verify license headder, which can dowload as following command.
wget http://mirrors.shu.edu.cn/apache//creadur/apache-rat-0.12/apache-rat-0.12-bin.tar.bz2
tar jxvf apache-rat-0.12-bin.tar.bz2
Given your source dir is apache-doris-0.9.0.rc01-incubating-src, you can check with following command. It will output a file list which don't include ASF license header, and these files used other licenses.
java -jar apache-rat-0.12/apache-rat-0.12.jar -a -d apache-doris-0.9.0.rc01-incubating-src -e *.md *.MD .gitignore .gitmodules .travis.yml manifest **vendor** **licenses** | grep File: | grep -v "test_data" | grep -v "gutil" | grep -v "json" | grep -v "patch" | grep -v "xml" | grep -v "conf" | grep -v "svg"
Currently only supports Docker environment and Linux OS, such as Ubuntu and CentOS.
Firstly, you must be install and start docker service.
And then you could build Doris as following steps:
$ docker pull apachedoris/doris-dev:build-env
You can check it by listing images, for example:
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
apachedoris/doris-dev build-env f8bc5d4024e0 21 hours ago 3.28GB
You can run image directyly:
$ docker run -it apachedoris/doris-dev:build-env
You can download Doris source by release package or by git clone in image. (If you have downloaded source and it is not in image, you can map its path to image in Step2.)
$ wget https://dist.apache.org/repos/dist/dev/incubator/doris/xxx.tar.gz
or
$ git clone https://github.com/apache/incubator-doris.git
Now you should in docker environment, and you can enter Doris source path and build Doris.
$ sh build.sh
After successfully building, it will install binary files in the directory output/.
You must be install following softwares:
GCC 5.3.1+, Oracle JDK 1.8+, Python 2.7+, Apache Maven 3.5+, CMake 3.4.3+
After you installed above all, you also must be set them to environment variable PATH and set JAVA_HOME.
If your GCC version is less than 5.3.1, you can run:
sudo yum install devtoolset-4-toolchain -y
and then, set the path of GCC (e.g /opt/rh/devtoolset-4/root/usr/bin) to the environment variable PATH.
Run following script, it will compile thirdparty libraries and build whole Doris.
sh build.sh
After successfully building, it will install binary files in the directory output/.
For more detail, you can refer to README.md in source package.
Documentation license here.