renovatebot / renovate

Home of the Renovate CLI: Cross-platform Dependency Automation by Mend.io
https://mend.io/renovate
GNU Affero General Public License v3.0
17.66k stars 2.33k forks source link

Support for helm values in Ansible module #29984

Open rarkins opened 4 months ago

rarkins commented 4 months ago

Discussed in https://github.com/renovatebot/renovate/discussions/29672

Originally posted by **mueller-ma** June 14, 2024 ### Tell us more. Helm, a Kubernetes package manager, can be executed by Ansible. Here's an example of the action `kubernetes.core.helm`: ````yaml --- - name: Install trivy-operator kubernetes.core.helm: name: trivy-operator namespace: trivy-system chart_repo_url: https://aquasecurity.github.io/helm-charts/ chart_ref: trivy-operator chart_version: 0.23.0 # There's a newer version: 0.23.3 values: trivy: image: registry: ghcr.io repository: aquasecurity/trivy tag: 0.52.0 # There's a newer version: 0.53.0 # Ansible tasks can be grouped via `block` - name: Ansible block with a helm task block: - name: Install trivy-operator kubernetes.core.helm: name: trivy-operator namespace: trivy-system chart_repo_url: https://aquasecurity.github.io/helm-charts/ chart_ref: trivy-operator chart_version: 0.23.0 release_values: # "release_values" is an alias for "values" trivy: image: registry: ghcr.io repository: aquasecurity/trivy tag: 0.52.0 ```` https://github.com/mueller-ma/renovate-reproduce/blob/main/ansible-helm/tasks.yml Two things could be updated via Renovate here: 1. `chart_version` is the version of the chart. When using a customManager similar to the `customManagers:dockerfileVersions`, the following arguments can be used to update this version: `datasource=helm depName=trivy-operator registryUrl=https://aquasecurity.github.io/helm-charts/` 2. The value of the keys `values` and `release_values` is like the content of a values.yaml file, which is supported by Renovate: https://docs.renovatebot.com/modules/manager/helm-values/ While I'm not aware of any default file name or file paths for Ansible yaml files, some common paths are: - `playbooks/*` - `role/*/tasks/`
rarkins commented 4 months ago

Reproduction forked to https://github.com/renovate-reproductions/29984