Add support for in-config helm values
Release notes
https://docs.gitlab.com/ee/user/clusters/agent/gitops/helm.html
We shipped initial Helm-chart support for the agent for Kubernetes in GitLab 15.4. The initial solution required Helm values to be included as part of the Helm charts, leading to large-scale code duplication for our users.
The current release allows you to specify the Helm values as part of the agent configuration. This way, you can add environment-specific values to the agent configuration file and keep generic values within the Helm chart.
Problem to solve
It should be possible to set the values for a Helm release directly from the agent configuration file.
Background
See gitlab-org/cluster-integration/gitlab-agent!727 (comment 1078812703).
Proposal
Support inline value objects, under values.inline
for a given release. For example:
gitops:
charts:
- release_name: my-release
source:
project:
id: my-group/my-charts
path: charts/the-chart
values:
- inline:
tag: v15.5.1
rbac:
create: true
When values.inline
is set, this should be deep-merged on top of (overwrite) the values from the chart.