Should I build my own pipeline or use GitLab for Kubernetes? My company is moving from an architecture of "many projects on a single webserver" to a Kubernetes cluster with multiple different hosted web applications in a single cluster.

In order to make integration of new customers easy, I want an UI to clone a 'template' code repository and give it a new life. When creating a new client from this interface, it would also create a Kubernetes deployment in a staging cluster, clone a database and possibly do other automated tasks.

I thought of rolling my own interface that would manage my Kubernetes deployments so I could tailor it exactly to the requirements, then I looked up GitLab and figured somebody was probably doing just that already.

Having never used GitLab, would it suit my use case?

Once the initial setup is done, I would actually use it for its intended purpose so I know it'll be good for that at least. 

Question 2: Can I edit Kubernetes deployment configs from GitLab, such as changing replica count or RAM limit while it's running?
One could just run kubectl apply -f &lt;file&gt;. When one updates an application, one could just run this command. A CI is basically able to run scripts. As GitLab is just a CI and a Git repository one could just run kubectl in a gitlab-ci.yml pipeline.