Versions Compared

Key

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

...

The build-branch workflow is divided into a number of different jobs, most of which run in parallel. Each job is described below.

Use of GA's build matrix feature

Some of the jobs are defined using GA's "build matrix" feature. This allows you define similar jobs with a single job definition. Any differences are specified by a list of values for a specific key. For example, the "compile" job uses the matrix feature to generate the images with different versions of java. There, the matrix is specified by the "java" key which has a list of values describing which version of java to use, (8 or 11.)

Use of GA's fail-fast flag

The jobs currently using the "build matrix" feature are: "compile", "basic", "acceptance" and "integration". These jobs also use GA's fail-fast flag to cancel the other jobs in the same matrix, if one fails. For example, in the "compile" job, if the java 8 build fails, the java 11 build will be cancelled due to this flag, but the other jobs outside the "compile" matrix are unaffected.

...

Note that the deprecated build-branch has the same name as the current build-branch. (They can be distinguished by the URL.)

Tips

  • When viewing the results of a CI run at a URL like https://github.com/apache/ozone/runs/<run-ID>?check_suite_focus=true, where run-ID  is some number generated by GitHub, the logs for that run can be downloaded from the corresponding URL https://github.com/apache/ozone/runs/<run-ID>. They will appear under the Artifacts pulldown in the top right corner, and usually expire after one day.
  • When a build of the Ozone master branch fails, its artifacts are stored here.
  • To trigger rerunning the tests, push a commit like this to your PR: git commit --allow-empty -m 'trigger new CI check'
  • This wiki contains tips on running tests locally.
  • This wiki contains tips on special handling of the CI system, such as "Executing one test multiple times", or "ssh'ing in to the CI machine while the tests are running".