Problem Space for Deploying to GitLab.com
Problem Statement
Currently we have a limiting featureset that prevents us from quickly branching and trying new things or experimenting with things when wanting to Deploy to our infrastructure that runs GitLab.com. In this issue, I want to highlight the key points that can drive bettering our deployment experience which should enable us more flexibility in the future. In doing so, the goal of this issue is to bring to light other problems or situations that have not yet been discussed such that we can begin trying to break down the work required to relieve us of any pain points and have a better grasp at how to prioritize the proposed work that we'd like to accomplish.
Key Issues
- No support for additional or easily creating new deployments: #2912 (closed)
- Our frontdoor has no support for automatically creating entrypoints to enable new deployments to receive traffic: #2751 (closed)
- To test new deployments, whether temporary or newly created, we have no way to execute QA tests on them: #2882
- ...
End Goal
We have desires for things like Blue/Green Deployments as well as Experimental Deploys. Each of which require the above to be fully complete. The value we gain from this should enable us to provide easier rollforwards and rollbacks, the ability to deploy specific workloads with specific versions, each of which come with some form of verification prior to receiving traffic. By doing so, we should be able to indirectly drop MTTP (Mean Time To Production) with expanded capabilities that we can enable developers to leverage. We should also be able to reduce MTTR (Mean Time To Resolution) as we can hypothetically deploy faster, or rollback faster in the case of an incident.
Next Steps
Let's leverage this issue to both discuss what we're missing in the problem space we are attempting to tackle, but also determine what we think we can acheive in upcoming quarters and set us up with successful OKRs to target our next quarter.
Milestones
-
Identify other pain points or undiscussed problem areas of concern -
Create or supplement issues as necessary -
Place all issues in a prioritized list -
Build up our next OKR