Skip to content

UI crash with multi-source Argo CD apps: can't access property "repoURL", e.spec.source is undefined #53

Description

@Timpan4

I’m seeing Cased CD’s Applications view crash when it encounters a multi‑source Argo CD Application (one that uses spec.sources instead of spec.source).

Environment

  • Cased CD:
    • Chart: cased/cased-cd 0.2.17
    • Installed via Helm with:
      argocd:
        insecure: true
        server: http://argocd-server.argocd.svc.cluster.local:80
  • Argo CD:
    • Version: v3.2.1
    • Argo’s own UI and API work fine

What happens

  1. Log into Cased CD.

  2. Open the Applications view.

  3. As soon as the list of apps loads, the UI shows:

    Something went wrong!
    can't access property "repoURL", e.spec.source is undefined

  4. The browser network tab shows the Argo CD /applications API returning 200 with valid JSON.

  5. Accessing Argo CD’s UI directly works with no issues.

So this looks like a frontend error in Cased CD, not a backend/API problem.

Example of a failing app

The crash only happens when there’s at least one multi‑source Application in the cluster, i.e. spec.source = null and spec.sources is set.

Here’s a reduced example with URLs anonymized:

{
  "metadata": {
    "name": "example-multi-source-app",
    "namespace": "argocd"
  },
  "spec": {
    "source": null,
    "sources": [
      {
        "repoURL": "https://example.com/helm-charts",
        "chart": "example-chart",
        "targetRevision": "1.2.3",
        "helm": {
          "valuesObject": {
            "some": "values"
          }
        }
      },
      {
        "repoURL": "https://example.com/git.git",
        "path": "example-app",
        "targetRevision": "HEAD"
      }
    ]
  }
}

This is the standard Argo CD 3.x multi‑source shape. Argo CD’s own UI handles it without any problems.

Expected vs actual

Expected:

  • Cased CD should handle both:
    • single‑source apps (spec.source), and
    • multi‑source apps (spec.sources).
  • The UI should not assume spec.source is always non‑null before accessing spec.source.repoURL.

Actual:

  • As soon as there’s at least one app with spec.source = null and spec.sources defined, the Applications view crashes with:

    can't access property "repoURL", e.spec.source is undefined

  • No errors from the Argo CD API, just a frontend exception in Cased CD.

Request

  • Please add support for multi‑source Applications (spec.sources) and/or make the frontend null‑safe when spec.source is null.
  • If there’s a specific Cased CD version that officially supports Argo CD 3.2.x and multi‑source apps, a note in the docs or chart README would be helpful.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions