Uploaded image for project: 'Cluster Observability Operator'
  1. Cluster Observability Operator
  2. COO-1256

ObservabilityInstaller CRD should validate storage configuration is required when tracing is enabled

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Undefined Undefined
    • None
    • None
    • cluster-observability
    • None
    • Quality / Stability / Reliability
    • False
    • Hide

      None

      Show
      None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Description:

      Summary:

      The ObservabilityInstaller CRD allows creation of resources with tracing.enabled: true but without storage configuration, which causes guaranteed reconciliation failures when the controller attempts to create a TempoStack instance.

      Steps to Reproduce:

        1. Create an ObservabilityInstaller with minimal configuration:

        apiVersion: observability.openshift.io/v1alpha1
        kind: ObservabilityInstaller
        metadata:
          name: test-minimal
        spec:
          capabilities:
            tracing:
              enabled: true
      

        2. Apply the resource to the cluster

        3. Check the operator logs

      Expected Behavior:

      Resource creation should fail with a validation error indicating that storage configuration is required when tracing is enabled.

      Actual Behavior:

        - Resource is created successfully

        - Controller reconciliation fails with error: TempoStack.tempo.grafana.com "test-minimal" is invalid:

        spec.storage.secret.type: Unsupported value: "": supported values: "azure", "gcs", "s3"

        - User gets runtime error instead of clear validation failure

      Root Cause:{}

      The toTempoStorageType() function in tempo_components.go:288 returns an empty string when no storage backend is configured, but TempoStack CRD validation only accepts "azure", "gcs", or "s3".

              ploffay@redhat.com Pavol Loffay
              rhn-support-ikanse Ishwar Kanse
              None
              None
              None
              None
              None
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: