Using GitLab to customize your pipelines and your entire CI/CD process
May 31, 2021
Using GitLab to customize your pipelines and your entire CI/CD process

Score 10 out of 10
Vetted Review
Verified User
Overall Satisfaction with GitLab
We use GitLab as our repository, as our point to perform code reviews, to discuss code practices, as a documentation hub, and most importantly, as our continuous integrations and continuous delivery platform, using all the features available of today for pipelines and jobs.
Every engineering team uses GitLab to host multiple projects in various technologies, ranging from Java, JavaScript, PHP, Python, DotNet, and Go.
Each team has a different flavor of configuration, but in general terms, every team has pipelines with other steps. GitLab has evolved during the past few years to provide more features, not only to be a tool to handle code changes based on the git protocol.
It's a Developer and DevOps tool that allows integrating with a vast range of providers, products from Atlassian, Slack, to name a few.
The level of customization available today on GitLab makes other direct competitors look bad.
We have set up pipelines to allow us to deploy code based on rules to different environments, run unit tests, scan for vulnerabilities using GitLab native features, among others.
- Setting up pipelines
- Handling configurable variables on different levels
- Source control
- Integrations with third party providers
- Customer support
- Customizing deployment procedures
- The configuration of variables and each level can be confusing at first.
- User permissions might be improved so it's more intuitive.
- Faster deployments
- More control of undesired deployments which might end up affecting our production environments
As of today, I believe that GitLab has many features that make it equal or superior to GitHub and Bitbucket. The CI/CD capabilities and the customization of pipelines from YML files are just one of many ways that you can add value to your deployment process on GitLab.
GitLab supports some customization through plugins and third-party integrations, and Bitbucket had some of these features before. Still, GitLab has been significantly increasing the amount of value they add by allowing developers and DevOps team members to customize deployment processes and run custom tasks and jobs at different stages of a pipeline.
We have used GitLab native security vulnerability scanning. We also use third-party solutions such as the ones offered by Snyk, which have excellent integration support with GitLab.
The reason is that GitLab security vulnerability tools are not as fast as others which can run in the cloud and as a service.
For the separation of concerns, speed, and added value, in our particular business model, we have found it particularly useful to rely on SasS tools when it comes to dependency scanning.
We use jobs, pipelines, and GitLab customization to run all kinds of validations. From unit tests to automated tests to dependency vulnerability scanning, we have different pipelines across different teams. All our pipelines are oriented to the same goals, add value to our customers, keep our code safe, have good quality, and perform as many validations as required.
Do you think GitLab delivers good value for the price?
Yes
Are you happy with GitLab's feature set?
Yes
Did GitLab live up to sales and marketing promises?
Yes
Did implementation of GitLab go as expected?
Yes
Would you buy GitLab again?
Yes