Skip to content

What is GitLab ?


With GitLab, you get a complete CI/CD toolchain out-of-the-box. One interface. One conversation One permission model.

About GitLab

GitLab started as an open source project to help teams collaborate on software development. By delivering new functionality at an industry-leading pace, GitLab now provides a single application for the entire software development and operations lifecycle. GitLab provides everything you need to Manage, Plan, Create, Verify, Package, Release, Configure, Monitor, and Secure your applications.

Why GitLab ?

Why GitLab ?

We use gitlab to store source code, but we use it for much more than that.

We use GitLab for:

  • CI/CD Pipelines with Native docker support.
  • Source code management.
  • Versioning and releasing applications.
  • Store container images (private registry)
  • Scheduled jobs
  • Kubernetes Integration

Gitlab pipeline

What is a Pipeline ?

A pipeline is simply a set of stages, which by turn run the commands which eventually constructs your CI/CD Flow.

You can learn about GitLab Pipelines at

GitLab CI/CD Pipeline Documentation

Gitlab artifacts

About artifacts

If any artifact was created at a previous runner from different stage of the same pipeline, gitlab can automatically copy it to the next runner, before the next stage starts

it is possible to control this feature directly from the stage with the artifacts: declaration:

script: xelatex mycv.tex
    - mycv.pdf
    expire_in: 1 week

GitLab Artifacts

or disable all artifacts availability by setting:

dependencies: [] 

All this management and much more, is abstracted from you, the developers.

Pipelines are configured by a single file which should be at the project's source code:


In the next page we will see how to create a Pipeline for our project.