GitLab has announced a new round of funding to help make its vision for Complete DevOps a reality. Last year, the company unveiled a plan to simplify the software development process. Today, they are taking that plan a step further by uniting development and operations into one user experience.
The recent $20 million Series C funding round will help GitLab reimagine and restructure DevOps tools to create one experience that “reduces friction, increases collaboration and drives a competitive advantage,” also known as Complete DevOps, the company wrote in a blog.
GitLab has said it believes in changing all creative work from read-only to read-write so that everyone is able to contribute. While DevOps helps create faster software iteration cycles with greater quality and security, the current software landscape has developers and operations using different tools, making collaboration difficult. In order to collaborate, they would have to integrate their tools together, which tends to slow progress and lead to poor code.
According to the company, a Complete DevOps solution includes a single UI for dev and operations, integrates all phases of DevOps, and enables dev and operation teams to work together with less friction.
“We want to build GitLab into the complete DevOps tool chain. We already cover every stage of the software development lifecycle. Why stop at production? Why not go beyond that, into operations? We want to close the loop between Dev and Ops, automating processes and reducing complexity so that you can focus on a great customer experience,” the company wrote. GitLab’s Head of Product, Mark Pundsack, lays out all aspects of their vision for DevOps in a blog post available here.
While GitLab already has a monitoring dashboard that is developer-centric, it will be creating a second dashboard with much of the same content, but instead be focused on the needs of operations. This will allow operators to get an overview of all projects in production, and keep developers and operations using the same tool to view the status of production.
GitLab also wants to be able to automatically create merge requests and do them automatically, instead of having to notify someone to go in and make changes manually. This allows developers to focus their time on other important things, according to the company.
Cloud development is another important part of their vision. Developing the cloud removes the need to constantly be maintaining multiple different languages and their dependencies. Developers can make changes, push them back, and then commit them to a repo.
GitLab PaaS (Platform as a Service) is a platform for ops to be built on. They give the example of their platform, which is built on Kubernetes, where developers never have to touch the Kubernetes dashboard or tools. They are able to fully manage their ops environment using GitLab tools without having to deal with the tools of the underlying platform.
Feature flags is the idea of writing code and deploying it, but not immediately delivering it. This allows developers to merge code more often because no one is using it, and allows them to have more control over the rollout when they are ready to deliver it. Developers can roll it out to a small percent of users, and if there turns out to be a problem with the code they can fix it without having affected that many people.
Auto DevOps is the ability to automatically detect programming languages and build an app in that language, and then automatically deploy it. Kubernetes users can Auto Build and Auto Deploy with just one click.
Other aspects of their DevOps vision include artifact management, SLO and auto revert, onboarding and adoption, and a pipeline view of environments. All of these features are talked about in detail in their DevOps Strategy.