Skip to content

Agent subscriber failing to get deployments - charts missing labels #467

@laurodias

Description

@laurodias

Summary

Litmus agents helm charts are missing required label for subscriber get pods status.

After updating Litmus Server & Agents to version v3.24.0, subscriber started throwing following error messages and restarting:

litmus-agent-subscriber-5486df548d-s6ct2 subscriber time="2025-12-22T13:26:12Z" level=error msg="failed to get deployments pods litmuschaos.io/app=chaos-exporter , err : pods not found"
litmus-agent-subscriber-5486df548d-s6ct2 subscriber time="2025-12-22T13:26:12Z" level=error msg="failed to get deployments pods litmuschaos.io/app=chaos-operator , err : pods not found"
litmus-agent-subscriber-5486df548d-s6ct2 subscriber time="2025-12-22T13:26:12Z" level=error msg="failed to get deployments pods litmuschaos.io/app=event-tracker , err : pods not found"
litmus-agent-subscriber-5486df548d-s6ct2 subscriber time="2025-12-22T13:26:12Z" level=error msg="failed to get deployments pods litmuschaos.io/app=workflow-controller , err : pods not found"
litmus-agent-subscriber-5486df548d-s6ct2 subscriber time="2025-12-22T13:26:42Z" level=fatal msg="all components failed to startup"

The issue happens because none of the deployments, except for agent-subscriber, have the label litmuschaos.io/app set. On subscriber chart the selectorLabels template (which is also included in the common labels template) is defined as follows:

{{/*
Selector labels
*/}}
{{- define "subscriber.selectorLabels" -}}
litmuschaos.io/app: {{ .Chart.Name }}
app: subscriber
app.kubernetes.io/name: {{ include "subscriber.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end }}

On all other charts the referred label is missing, eg:

{{/*
Selector labels
*/}}
{{- define "event-tracker.selectorLabels" -}}
app: {{ .Chart.Name }}
app.kubernetes.io/name: {{ include "event-tracker.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end }}

This is how the COMPONENTS key looks like in the subscriber-config configMap:

apiVersion: v1
data:
  COMPONENTS: 'DEPLOYMENTS: ["litmuschaos.io/app=chaos-exporter", "litmuschaos.io/app=chaos-operator",
    "litmuschaos.io/app=event-tracker", "litmuschaos.io/app=workflow-controller"]'

selectorLabels templates for reference: chaos-exporter, chaos-operator, event-tracker, workflow-controller

Proposed solution

Update all charts to include the missing label.

Workaround

Update Helm values for every agent (subscriber not needed) and include the litmuschaos.io/app label. For example:

chaos-operator:
  enabled: true
  customLabels:
    litmuschaos.io/app: chaos-operator

chaos-exporter:
  enabled: true
  customLabels:
    litmuschaos.io/app: chaos-exporter

event-tracker:
  enabled: true
  customLabels:
    litmuschaos.io/app: event-tracker

subscriber:
  enabled: true

workflow-controller:
  enabled: true
  crds:
    create: true
  customLabels:
    litmuschaos.io/app: workflow-controller

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