fluxcd / helm-controller

The GitOps Toolkit Helm reconciler, for declarative Helming
https://fluxcd.io
Apache License 2.0
414 stars 164 forks source link

Add support for `HelmChart` as chartRef #945

Closed souleb closed 7 months ago

souleb commented 7 months ago

If implemented, user will be able to share an existing HelmChart custom resource between HelmReleases.

Closes: https://github.com/fluxcd/helm-controller/issues/204

Followup: #905

souleb commented 7 months ago

switching from chart template to spec.chartRef of type HelmChart

Status:
  Conditions:
    Last Transition Time:  2024-04-22T09:39:21Z
    Message:               Helm upgrade succeeded for release default/podinfo-template.v2 with chart podinfo@0.1.0
    Observed Generation:   3
    Reason:                UpgradeSucceeded
    Status:                True
    Type:                  Ready
    Last Transition Time:  2024-04-18T09:13:16Z
    Message:               Helm upgrade succeeded for release default/podinfo-template.v2 with chart podinfo@0.1.0
    Observed Generation:   2
    Reason:                UpgradeSucceeded
    Status:                True
    Type:                  Released
  History:
    Chart Name:                   podinfo
    Chart Version:                0.1.0
    Config Digest:                sha256:e15c415d62760896bd8bec192a44c5716dc224db9e0fc609b9ac14718f8f9e56
    Digest:                       sha256:60770b7d040612283cc8931f8b67fd34d446d3b5316949e7a8803de05b448599
    First Deployed:               2024-04-16T08:28:52Z
    Last Deployed:                2024-04-18T09:13:12Z
    Name:                         podinfo-template
    Namespace:                    default
    Status:                       deployed
    Version:                      2
    Chart Name:                   podinfo
    Chart Version:                6.0.4
    Config Digest:                sha256:e15c415d62760896bd8bec192a44c5716dc224db9e0fc609b9ac14718f8f9e56
    Digest:                       sha256:912442ff9c2798eec85cdd81cc5dc5bab63d952fefbf423b32d52dda5cfb426a
    First Deployed:               2024-04-16T08:28:52Z
    Last Deployed:                2024-04-16T08:28:52Z
    Name:                         podinfo-template
    Namespace:                    default
    Status:                       superseded
    Version:                      1
  Last Applied Revision:          0.1.0
  Last Attempted Config Digest:   sha256:e15c415d62760896bd8bec192a44c5716dc224db9e0fc609b9ac14718f8f9e56
  Last Attempted Generation:      3
  Last Attempted Release Action:  upgrade
  Last Attempted Revision:        0.1.0
  Observed Generation:            3
  Storage Namespace:              default
Events:
  Type    Reason            Age   From             Message
  ----    ------            ----  ----             -------
  Normal  HelmChartDeleted  23s   helm-controller  deleted HelmChart 'default/default-podinfo-template'

It successfully garbage collect the old helmChart, performs and upgrade, and keep the same release version.