Continuous Delivery (CD)
GitLab CD vs Harness
Take Artifacts to Production On-Demand with Harness Continuous Delivery.
We’re the best Continuous Delivery solution, see for yourself.
Harness DevOps tools Vs GitLab
*Last updated: 3/31/2021
Detailed Feature Comparison
Harness CD Vs. GitLab
Both GitLab and Harness offer SaaS and on-prem versions of their product. No matter your use case, both solutions can deliver.
A plus to using GitLab is that it was, initially, a source code management tool / Git repository. As such, converting to their CI/CD platform would have advantages when it comes to easy integration. However, if GitLab is your SCM tool of choice, rest assured that Harness easily integrates with it as well. When it comes to ease of use, some features are buggy and that the overall system can be quite slow. Documentation was found to be lacking for more complex setups. UI is clean, but not intuitive – definitely has a learning curve and needs improvements in order to be less confusing. Lastly, CI can be hard to integrate with automatic and manual tests users have created in the past with their prior CI tool.
GitLab supports AWS, Azure and GCP clouds. It also supports Kubernetes, Helm, and ECS for container orchestration. Harness supports all of the above, and additionally, all other cloud providers. Harness was designed to be cloud-native.
GitLab supports JAVA, .NET, and custom traditional apps. But, Harness does it too – among a plethora of other things.
To utilize Canary deployments with GitLab, you must first go through the process of enabling Deploy Boards, and then you can enable the Canary deployments themselves. It’s a cumbersome process when you can have a platform like Harness that provides Canary deployments out of the box – no coding required, only some minor config.
GitLab, as of October 2020, now offers a Terraform integration for infrastructure provisioning. Harness offers a Terraform integration too, but also goes a step further and supports AWS CloudFormation. All other infrastructure provisioners are supported via shell script.
Continuous Verification is the process of monitoring your app for abnormalities after a deployment. For example, Continuous Verification could catch a latency issue or 5xx errors and automatically roll back your app to the previous version. The idea is to catch errors as quickly as possible – ideally, before customers notice – and make a seamless transition back to the prior version. GitLab does not provide Continuous Verification capabilities, only a manual process with a Prometheus integration. Harness, however, provides Continuous Verification out of the box, effectively reducing risk and reputational damage from downtime. As for vendor integrations, we mentioned Gitlab’s Prometheus – sadly, it’s currently their only tool integration. Harness supports many vendors, including Prometheus, Datadog, AppDynamics, New Relic, StackDriver, CloudWatch, and custom monitoring and observability tools.
GitLab offers a Jira integration, but that’s more so for record keeping purposes. You can’t do anything substantial, like using Jira to approve or reject a pipeline or workflow step. Harness, however, offers this functionality. With a few simple steps, you can easily leverage Jira and ServiceNow as approval mechanisms.
GitLab does not offer native secrets management capabilities. They have selected Vault by HashiCorp as their first supported secrets management partner, which means you must first configure your Vault server. Harness, on the other hand, offers proprietary, integrated secrets management. No third parties are required, but all of the major secrets managers are supported.
GitLab provides good governance and compliance features, but many of them are only available on their Premium or higher plans, audit trails included. GitLab provides a list of every audit event, some which are pruned after 30 days. Harness provides audit trails on every pipeline, workflow, step, execution, and change. It’s all audited by Harness so you have a complete trail of all user activity.
There are four key metrics when it comes to software development: Lead Time (the average amount of time it takes from the time code is checked in to the version control system to the point in time where it is deployed to production), Deployment Frequency (the number of times deploys to production occur in a time period), Mean Time to Restore (MTTR: how long it takes to resolve or rollback an error in production), and Change Failure Rate (what percentage of changes to production fail). These metrics are paramount in truly understanding performance. GitLab currently has an Epic open to add this functionality, with the various plans/tiers getting upgraded reporting. Harness offers a beautiful dashboard specifically for these metrics and allows you to set alerts as needed – for example, you could set an alert to notify you if the Change Failure Rate goes above 1%.
*Please note: Our competitors, just like us, release updates to their products on a regular cadence. We keep these pages updated to the best of our ability, but there are bound to be discrepancies. For the most up-to-date information on competitor features, browsing the competitor’s new release pages and communities are your best bet.
Interested in seeing whats under the hood? Browse through the Harness Continuous Delivery (CD) Product.
Don’t believe us? Check out what these beautiful people have to say.
Don’t just take our word for it, see why customers love Harness Continuous Delivery (CD) as compared to our competition.