What is GitLab ?
With GitLab, you get a complete CI/CD toolchain out-of-the-box. One interface. One conversation One permission model.
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
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.com
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
pdf: script: xelatex mycv.tex artifacts: paths: - mycv.pdf expire_in: 1 week
or disable all artifacts availability by setting:
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.