Just-in-time Kubernetes resource creation
Problem to solve
Currently, we provision project-related k8s resources (namespace, service account) automatically for all projects related to the action (at this time avail at group-level only). This is not ideal for instance-level clusters https://gitlab.com/gitlab-org/gitlab-ce/issues/39840 as not all projects may make use of the k8s integration.
Target audience
developers, operators
Further details
Proposal
In order to provision group and instance level clusters efficiently, we should create the necessary project-related resources (namespace, service account) just-in-time. We should defer namespace and svc account creation until project has a deployment CI job. Any other type of job (ie. build, test) should not create k8s resources. Finally, environment name should be derived from the job the create the resources in the correct location.
What does success look like, and how can we measure that?
Links / references
This page may contain information related to upcoming products, features and functionality. It is important to note that the information presented is for informational purposes only, so please do not rely on the information for purchasing or planning purposes. Just like with all projects, the items mentioned on the page are subject to change or delay, and the development, release, and timing of any products, features, or functionality remain at the sole discretion of GitLab Inc.