Continuous Integration

Introduction

Continuous Integration (short CI) is the practice of merging all developer working copies to a shared mainline several times a day.

So for every proposed change to the source code the following is done automatically:

  • Compilation of the changed code merged with the official source code is tested on a variety of platforms (Windows, Linux, Mac OS, different compilers)
  • A comprehensive test suite checks validity of the proposed changes
  • Additional checks regarding code formatting and documentation help in maintaining a good software quality and structure

After the system is done with all these tasks the developer can view build reports highlighting occurred errors and problems. We are using GitLab CI as our CI system.

CI on OGS

All of this automatically kicks in when you open a Merge Request on GitLab. You will notice a pipeline block at the merge request page: GitLab CI screenshot

Click on the pipeline link or the individual pipeline stage icons (circles) to find out the reason for a failed check. If you add more commits to this merge request all checks are run again.

See the GitLab CI page for more info.


This article was written by Lars Bilke. If you are missing something or you find an error please let us know. Generated with Hugo 0.79.0. Last revision: July 2, 2021
Commit: Added BuildExternalProject() to cmake-format config. 3a62e0dc  | Edit this page on