GitLab Kubernetes Agent POC
Problem to solve
As a Platform Operator, I want a solution that deploys from GitLab into my cluster on a closed VPN.
This is our iteration 1. We have two goals with it:
- Support private networks: User can connect to cluster that is behind firewall
- Deployment: be able to deploy from GitLab
With respect to deployment, our focus currently is on the speed of development.
Intended users
User experience goal
Proposal
GitLab Kubernetes Agent
Supporting private networks
-
Establishing connection from cluster to GL installation - Server side can run
- Client side can run
- Connection made successfully
-
Client can read configuration from user provided config file which contains auth token and server URL -
Add a method to server so that the client can call it to fetch configuration - To fetch info from repo https://gitlab.com/nagyv-gitlab/gitlab-cloud-native-operator-configuration
- Config tells agent what to enable. Nothing initially
-
Agent is fully documented - Architecture
Deployment support
Either GitOps/Basic Deployment workflows
GitOps/Basic Deployment workflows:
-
User can add config to specify which IaC repo agent should monitor for changes. -
Client can fetch changes from repo - Client talks to GL API to ask what changes may exist (maybe it’s the server who polls the API?)
-
Apply changes to cluster -
Workflow is fully documented
Further details
Permissions and Security
Documentation
Availability & Testing
What does success look like, and how can we measure that?
What is the type of buyer?
Is this a cross-stage feature?
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.