So, in this post, I'm going to address that by highlighting some of the new features and improvements that you might be interested in. 😬
By allowing the use of variables inside the include keyword, it will open new ways to define CI/CD pipelines. An example is to allow updating of the template in multiple projects through the use of a variable as below.
A DevOps engineer could just update the
$PIPELINE_TEMPLATE_REF variable in the group CI variables and all projects would use the new version of the template. Incredible, right? 🤩
One of the main features of this version is the ability to define a pipeline without stages. For some pipelines, this will also add clarity as the relationships between each job will be explicit , instead of being implicit. It should be easier now to introduce GitLab pipelines to newcomers. 🌚
I don't know about you, but the number of people who mispronouncing my name is too high for my liking. 😅
This feature will be especially useful in helping us learn how to pronounce the names of newcomers. It's the least we can do, right? 👍
If you working with people in different time zones, it could help you not to wait for someone else to answer if it's late where they are. If it is past my bedtime at 10 PM, don't expect an answer from me, I should be sleeping. 😴
By adding rules to the include keyword, we can now only define one
.gitlab-ci.yml and include some of its parts if certain conditions are met.
I hope this will also allow us to include another template if the project contains some files.
Imagine, instead of manually updating each
.gitlab-ci.yml file to add hadolint when a repository contains a Docker file, you could simply add your common pipeline and the repository pipeline would build itself! 😲
This is definitively something that I will be trying soon! ⌛
Everyone loves inception, right? I'm sure this new functionality will also help us develop and maintain our pipelines as well. ♾️
I started to use the new !reference keyword after it was introduced, but I remember that I quickly ran into one of its limitations: we couldn't use it with the rules keyword. It is now a thing of the past! 🌟
So, that's it, the latest versions of GitLab have revealed us the new improvements. I look forward to trying them. 🤗