Skip to main content

CI/CD and Build System


CI/CD and Build System

ICDP internal: This section describes the mDIS build pipeline, runners, and GitLab CI/CD settings.

Start Here

The mDIS Build and Installation System

Our development workflow with automated build steps:

flowchart LR
    Developers -->|"Code Push"| VersionControl["Version Control<br>(GitLab)"]
    VersionControl -->|"triggers CI"| CIPlatform["Build System<br>(GitLab)"]
    CIPlatform --> DockerImage["mDIS Docker image<br>(GitLab)"]
    CIPlatform -- "delivers Feedback " --> Developers

CI = Continuous Integration

In contrast, building mDIS instances manually can be time-consuming and error-prone.

Especially,

  • if we need to repeat these build processes many times.
  • if we need to create many variants of installations for testing and comparison purposes.
  • we may need to restart or reconfigure these installation workflows, after long breaks.
  • or if these tasks need to be carried out by different people, with different levels of expertise.

Therefore, we need something to automate, monitor, and govern the mDIS build and deployment processes.


For Experts


For Non-Experts

Build System: CI/CD Concepts

Non-Experts who need to understand the basics of CI/CD, start here:

Visual Overview Diagrams:

More Informationopen in new window about this wiki.

Build System: CI/CD Settings

It a major benefit to be able to reconfigure the CI/CD system. Thus we can start various automated workflows, in many ways.

Important configuration variables

ICDP Internal

Internal Documents

These links describe the Build System of the mDIS Source Code, in particular

Target audience of these pages are mDIS Project members - ICDP data management, GFZ developers, GFZ employees, and external collaborators.

Misc