Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Github checks consists of a series of checking tasks, designed to verify whether the basic functions of doris Doris pass.

Image RemovedImage Added

When a Pull Request is submitted, Github Checks are automatically triggered.

The following Checks are REQUIRED, and only after passing these checks can the code be merged:

  1. BE Code Formatter: BE C++ code format check(sh build-support/check-format.sh)
  2. FE Code Style Checker: FE JAVA code format check (cd fe/ && mvn clean install -DskipTests)
  3. BE UT (Clang): Run BE unit test with Clang (DORIS_TOOLCHAIN=clang ./run-be UT (Doris FE UT): FE unit tests will be executed: sh run-fe-ut.sh --run --clean)
  4. BE UT (Doris BE UT): BE unit tests will be executed: sh run-be-ut.sh --run
  5. P0 regression FE UT (Doris P0 RegressionFE UT): Will execute the compilation of FE and BE (sh build.sh --fe --be), and build the Doris environment of 1 FE and 1 BE, and execute regression test(sh run-regression-testFE unit tests will be executed: sh run-fe-ut.sh --run)
  6. License Check / License Check: License check, will check whether all source files contain Apache License Header
  7. ShellCheck: Check all shell scripts format. (sh build-support/shell-check.sh)
  8. Build Extensions / Build Extensions: Will compile fs_brokerBroker: Build Broker (cd fs_brokers/apache_hdfs_broker/ && sh build.sh) and docs
  9. Build Extensions / Build Documents: Build Documents (cd docs && sh /bin/bash build_help_zip.sh && npm install && npm run build).sh)
  10. P0 Regression (Doris Regression): Will execute the compilation of FE and BE (sh build.sh --fe --be), and build the Doris environment of 1 FE and 1 BE, and execute regression  p0 test(sh run-regression-test.sh --run)
  11. P1 Regression (Doris Regression): Will execute the compilation of FE and BE (sh build.sh --fe --be), and build the Doris environment of 1 FE and 1 BE, and execute regression  p1 test(sh run-regression-test.sh --runBE Code Formatter / Clang Formatter: BE C++ code format check(sh build-support/check-format.sh)

The other Checks are NOT REQUIRED. Which means, even if these checks fail, it does not affect the merge of the Pull Request.

...

All checks are automatically triggered when a Pull Request is submitted, or when the Pull Request is updated.

  1. The Checks 14,5,210,3 11 are triggered by TeamCity. The TeamCity service will detect the change of Doris Pull Request every 10 minutes and trigger the corresponding check(TeamCity Pipeline).
  2. The other Checks 4,5,6 are triggered by Github Action. They will be triggered immediately after PR is submitted or updated.

...

Essentially, Jenkins is an automation engine that supports many automatic modes. Users can define pipeline on Jenkins to automatically perform a series of repetitive tasks.

The ASF Build Services provides a Jenkins server for any ASF project to run build and test tasks for their project from this server. (See the Jenkins wiki page).

And all user will be able to view results and logs of those builds on the Web UI.

...