Our direction for “Auto DevOps” is to leverage our single application to assist users in every phase of the development and delivery process, implementing automatic tasks that can be customized and refined to get the best fit for their needs.
With the dramatic increase in the number of projects being managed by software teams (especially with the rise of micro-services), it's no longer enough to just craft your code. In addition, you must consider all of the other aspects that will make your project successful, such as tests, quality, security, logging, monitoring, etc. It's no longer acceptable to add these things only when they are needed, or when the project becomes popular, or when there's a problem to address; on the contrary, all of these things should be available at inception.
e.g. “auto CI” to compile and test software based on best practices for the most common languages and frameworks, “auto review” with the help of automatic analysis tools like Code Climate, “auto deploy” based on Review Apps and incremental rollouts on Kubernetes clusters, and “auto metrics” to collect statistical data from all the previous steps in order to guarantee performances and optimization of the whole process. Dependencies and artifacts will be first-class citizens in this world: everything must be fully reproducible at any given time, and fully connected as part of the great GitLab experience.
Watch the video explaining our vision on Auto DevOps.
Interested in joining the conversation for this category? Please join us in our public epic where we discuss this topic and can answer any questions you may have. Your contributions are more than welcome.
As the Kubernetes project rapidly matures and some of its API endpoints are deprecated/removed, we must ensure all the components of Auto DevOps currently interacting with its API are updated to ensure its continuing successful function.
Auto DevOps readiness for Kubernetes 1.16
This category is currently at the "Minimal" maturity level, and our next maturity target is Viable. See the Auto DevOps viable epic for more info. Deliverables:
Auto Devops ties together several feature from across GitLab product categories. Each individual feature will have its own maturity classification.
Feature | Reponsible GitLab Group |
---|---|
Auto Build | Configure |
Auto Test | Testing |
Auto Code Quality | Testing |
Auto SAST | Static Analysis |
Auto Secret Detection | Static Analysis |
Auto Dependency Scanning | Composition |
Auto License Compliance | Composition |
Auto Container Scanning | Composition |
Auto Review Apps | Progressive Delivery |
Auto DAST | Dynamic Analysis |
Auto Browser Performance Testing | Testing |
Auto Load Performance testing | Testing |
Auto Deploy | Progressive Delivery |
Auto Monitoring | APM |
While there are "piece-meal" solutions that offer to automate a particular stage, there are no comprehensive tools that offer to address the entire devops lifecycle.
DeployHQ offers to "Automatically build and deploy code from your repositories", however, its UX is complex that its deployment targets limited.
There is currently no analyst category that aligns with Auto DevOps.
Use Auto DevOps for design.gitlab.com
Add support for AWS ECS deployments to Auto DevOps
Use Auto DevOps for design.gitlab.com