CircleCI vs. GitLab: Choosing the Right CI/CD Tool

He is a gifted driver. Famed for speed, reverse J, and drifts. He can breeze through the Moscow and Mexico traffic without sweating a drop. Of course, no one gets cracking on Bengaluru roads  But despite being so adept behind the wheels, he sometimes fails to champ the street races. Screeching tyres buzz in his head doesn’t let him sleep at times. I wish to tell him it’s not always about the driver, sometimes it’s the engine. That’s what happens when the right dev talent uses wrong, inefficient, incompatible CI/CD tools. The DevOps technologies you chose can abruptly break or smoothly accelerate your software development cycle. This article explores the Ford & the Ferrari of the CI/CD world in detail, CircleCI vs. GitLab, to help you pick the right one.

Why Is CI/CD Important?

Modern software development approaches prioritize automating repetitive processes. ‘Lean, modular, iterative development is the new mantra of the dev community.

How to Run GitLab CI Pipeline With Parallel RSpec Tests in Ruby

GitLab CI allows you to run tests much faster thanks to its CI parallelization feature. You can run parallel jobs across multiple GitLab Runners. In order to do it, you will learn how to split tests in a dynamic way across parallel tasks to ensure there is no bottleneck in GitLab Pipeline. Thanks to that CI build can be run as fast as possible so your Ruby and JS tests can be finely fast.

GitLab CI Parallelization

The common problem when you want to run tests in parallel to complete your one-hour test suite in a few minutes instead of waiting hours is to find a way to split tests on parallel jobs. Some of your Ruby or JavaScript tests can take milliseconds and some even a few minutes per test file (for instance, when using Capybara in RSpec features testing). The problem with slow tests also occurs in E2E (end to end testing) when using Cypress test runner as browser testing can take quite a long time to execute.

Automate Spring Boot App Deployment With GitLab CI and Docker

In this guide, we will walk through the process of the automated deployment of a Spring Boot application using GitLab CI. 

Docker and Spring Boot is a very popular combination, and we will take advantage of GitLab CI and automatically build, push and run a Docker image on application server.