argoproj / argoproj/argo-cd

Add "open parent app" button on app details page if availalable (app-of-apps)

Open
#26,537 7 comments 4 reactions 0 assignees View on GitHub
enhancement triage/pending
Dominant language
Go
Stars
24.2k
Forks
7.8k
Avg merge
1d 12h
Merged PRs (30d)
234

Description

# Summary

Add a button on the app details page that navigates to the parent app when the current app is managed by another app (app-of-apps pattern).

# Motivation

App-of-apps is a widely used pattern in ArgoCD. When you drill into a child app's details — to check its sync status, logs, or events. There's no way to get back to the parent app without leaving and searching through the app list manually. In deployments with many apps this gets tedious quickly, especially when the parent app name isn't obvious from the child app's name.

# Proposal

ArgoCD already writes ownership data onto managed resources via resource tracking, so no backend changes are needed. For a child Application resource the parent app name is available via:

- **Label tracking** (`app.kubernetes.io/instance`): the label value is the parent app name. Since label tracking does not support app-in-any-namespace, the parent is always in the same namespace; safe to assume.
- **Annotation tracking** (`argocd.argoproj.io/tracking-id`): the parent app name is the portion before the first `:`. For app-in-any-namespace setups, the namespace can be resolved via an API lookup by name.

The UI reads the label or annotation and conditionally renders a link (e.g. in the application status panel), only shown when a parent app is detected.

# Options
1. Application page button
Image

2. Application details row
Image

3. Breadcrumbs on top with dropdown if > 2 parent apps
Image
Always show max 1, with dropdown of higher-up-in-the-hierarchy apps
Image

Contributor guide

Open the contributing guide

Research direction

Start at the application details page and trace how the current Application's managed-resource tracking data is exposed to the UI. Verify label tracking and tracking-id annotation cases, including namespace lookup for app-in-any-namespace, then confirm the chosen placement for a conditional parent-app link and test that it is absent when no parent is detected.

Written by the indexing model from the issue text.

Assessment

Tech stack
kubernetes
Domain
devops, frontend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.