GitLab CI vs Jenkins X: What are the differences?
What is GitLab CI? GitLab integrated CI to test, build and deploy your code. GitLab offers a continuous integration service. If you add a .gitlab-ci.yml file to the root directory of your repository, and configure your GitLab project to use a Runner, then each merge request or push triggers your CI pipeline.
What is Jenkins X? A CI/CD solution for cloud applications on Kubernetes. Jenkins X is a CI/CD solution for modern cloud applications on Kubernetes.
GitLab CI and Jenkins X can be categorized as "Continuous Integration" tools.
"Robust CI with awesome Docker support" is the top reason why over 16 developers like GitLab CI, while over 2 developers mention "Kubernetes integration" as the leading cause for choosing Jenkins X.
Jenkins X is an open source tool with 2.8K GitHub stars and 498 GitHub forks. Here's a link to Jenkins X's open source repository on GitHub.
According to the StackShare community, GitLab CI has a broader approval, being mentioned in 210 company stacks & 93 developers stacks; compared to Jenkins X, which is listed in 3 company stacks and 7 developer stacks.
What is GitLab CI?
What is Jenkins X?
Need advice about which tool to choose?Ask the StackShare community!
Sign up to add, upvote and see more prosMake informed product decisions
What are the cons of using GitLab CI?
Sign up to get full access to all the companiesMake informed product decisions
Sign up to get full access to all the tool integrationsMake informed product decisions
We use GitLab CI because of the great native integration as a part of the GitLab framework and the linting-capabilities it offers. The visualization of complex pipelines and the embedding within the project overview made Gitlab CI even more convenient. We use it for all projects, all deployments and as a part of GitLab Pages.
While we initially used the Shell-executor, we quickly switched to the Docker-executor and use it exclusively now.
We formerly used Jenkins but preferred to handle everything within GitLab . Aside from the unification of our infrastructure another motivation was the "configuration-in-file"-approach, that Gitlab CI offered, while Jenkins support of this concept was very limited and users had to resort to using the webinterface. Since the file is included within the repository, it is also version controlled, which was a huge plus for us.
We are using GitLab CI and were very happy with it. The integration of all tools like CI/CD, tickets, etc makes it very easy to stay on top of things. But be aware, Gitlab currently does not have iOS build support. So if you want to exchange that for CircleCI / Codeship to have to invest some effort. We are using a managed Mac OS device and installed the Gitlab runner there, to have iOS builds.
We use Gitlab CI to unit and component test all of our application/components/modules. Therefore we use Docker runners.
GitLab CI is extremely flexible and easy to use. We also enjoy the elastic build infrastructure which is Docker based.