Skip to content

ADR 7: GitLab CI as build server

Context

Course materials need to be build and deployed to the server before they can be seen by students. In the original official version of the IT4KT, course materials where built by the author on his machine and checked into the Subversion repository. Some variants of the experimental version used GitLab CI for building the materials and uploading them to the server.

Decision

We decided to use GitLab CI as a build server for courses. After each push to the master branch, the course would be built in the Docker container by the GitLab CI and uploaded to the server using a special service. Default configuration for the CI is placed in the example course.

Status

Accepted.

Consequences

Published course materials would be automatically synchronized with the master branch of Git repository. It would also allow to do different processing for local preview and for published version without the risk of uploading the wrong version.

The use of GitLab CI for this purpose allows to reuse existing infrastructure provided by KPI GitLab server.