Add gitlab_kas enabled and KAS address in config/gitlab.yml
We should have a place where the instance admin can configure whether :
- GitLab KAS is enabled, or not.
- GitLab KAS's external URL for connecting agents.
- GitLab KAS's internal API URL, for calling KAS from the GitLab backend
- (Nice to have) The KAS server version, if different from
GITLAB_KAS_VERSION
This is will be similar to GitLab container registry's configuration in config/gitlab.yml
.
Release notes
While GitLab administrators could install the Kubernetes Agent Server beside their GitLab instances, until now they lacked much configuration options. The current release offers GitLab Administrators the possibility to specify the Agent Server's external and internal URLs and its enabled status in the core GitLab configuration file, and GitLab will use these configuration values for every interaction with the Agent Server.
Problem
A GitLab instance doesn't know how to show the url for agents to connect. Also GitLab doesn't know if Kas is enabled or not, so it cannot show appropriate messages
Proposal
Add optional keys under gitlab_kas:
in config/gitlab.yml
gitlab_kas:
# enabled: true
# external_url: wss://kas.gitlab.example.com
# internal_url: wss://kas.internal
and in follow ups, do:
- (Follow up) show the kas url in instructions on how to connect agents.
- (Follow up) Have text saying "kas is disabled, and please ask administrator to enable Kas" if Kas is disabled, and there are agent records.
Progress:
-
Add support in gitlab backend: !54260 (merged) -
Add support for these new keys in GDK: gitlab-development-kit!1842 (merged) -
Add support for these new keys in Omnibus: omnibus-gitlab!5016 (merged) -
Add support for these new keys in Chart: gitlab-org/charts/gitlab!1879 (merged) -
Follow ups created: gitlab-com/gl-infra/delivery#1623 (closed)