Skip to content

HelmRelease status on HelmChart not ready #1252

@gsanchezgavier

Description

@gsanchezgavier

Hi, I'm seeing the HelmRelease status condition update taking one interval to reflect the HelmChart not ready message. It shows latest generation of object has not been reconciled message until the next reconcile interval where the actual HelmRelease not ready message is shown.

To reproduce this, a missing version of a helm chart can be set like this:

apiVersion: source.toolkit.fluxcd.io/v1
kind: HelmRepository
metadata:
  name: test
spec:
  interval: 10m
  url: https://helm.github.io/examples
---
apiVersion: helm.toolkit.fluxcd.io/v2
kind: HelmRelease
metadata:
  name: test
spec:
  interval: 5m
  chart:
    spec:
      chart: hello-world
      version: 0.1.0-missing-version
      sourceRef:
        kind: HelmRepository
        name: test

The first status condition on the HelmRelease is

status:
  conditions:
  - lastTransitionTime: "2025-07-09T15:30:16Z"
    message: Fulfilling prerequisites
    observedGeneration: 1
    reason: Progressing
    status: "True"
    type: Reconciling
  - lastTransitionTime: "2025-07-09T15:30:16Z"
    message: 'HelmChart ''default/default-test'' is not ready: latest generation of
      object has not been reconciled'
    observedGeneration: 1
    reason: SourceNotReady
    status: "False"
    type: Ready
  helmChart: default/default-test
  observedGeneration: -1

And after the interval it gets updated with the current HelmChart not ready message

status:
  conditions:
  - lastTransitionTime: "2025-07-09T15:30:16Z"
    message: Fulfilling prerequisites
    observedGeneration: 1
    reason: Progressing
    status: "True"
    type: Reconciling
  - lastTransitionTime: "2025-07-09T15:30:46Z"
    message: 'HelmChart ''default/default-test'' is not ready: invalid chart reference:
      failed to get chart version for remote reference: no ''hello-world'' chart with
      version matching ''0.1.0-missing-version'' found'
    observedGeneration: 1
    reason: SourceNotReady
    status: "False"
    type: Ready
  helmChart: default/default-test
  observedGeneration: -1

And here is the status of the HelmChart

status:
  conditions:
  - lastTransitionTime: "2025-07-09T15:30:17Z"
    message: 'invalid chart reference: failed to get chart version for remote reference:
      no ''hello-world'' chart with version matching ''0.1.0-missing-version'' found'
    observedGeneration: 1
    reason: InvalidChartReference
    status: "True"
    type: Stalled
  - lastTransitionTime: "2025-07-09T15:30:17Z"
    message: 'invalid chart reference: failed to get chart version for remote reference:
      no ''hello-world'' chart with version matching ''0.1.0-missing-version'' found'
    observedGeneration: 1
    reason: InvalidChartReference
    status: "False"
    type: Ready
  - lastTransitionTime: "2025-07-09T15:30:16Z"
    message: 'invalid chart reference: failed to get chart version for remote reference:
      no ''hello-world'' chart with version matching ''0.1.0-missing-version'' found'
    observedGeneration: 1
    reason: InvalidChartReference
    status: "True"
    type: FetchFailed
  observedGeneration: 1
  observedSourceArtifactRevision: sha256:2df73a274124471769e659912cf88d9faae18f6307193bff262bc3eab75f52c7

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions