argo-cd icon indicating copy to clipboard operation
argo-cd copied to clipboard

[UI] - Show applications on more than 2 levels

Open NPellet opened this issue 3 years ago • 7 comments

Summary

We work with apps of apps of apps of apps, and it would really be awesome to have

  • A way to see multiple levels of apps
  • When looking at a particular app, a button to view the parent (controlling) app of that app (just like we have a button to open the app and view its controllees)

image

  • When looking at an app that has multiple apps, to be able to show the root app, its directly controlled apps as well as controlled resources of those controlled apps, instead of needing to open the child app (see comment below for example)

Motivation

Like I said, when we have a lot of apps of apps, there's a lot of navigating around. Having the possibility to show more level at onces might be beneficial

Proposal

Maybe the number of levels to display could be an option in argocd-cm ?

NPellet avatar Aug 23 '22 10:08 NPellet

For example, consider my following app-of-apps pattern to handle multiple deployments:

image

I have no way of knowing whether my child app's dependencies are synced:

image

And I have to open each of my application independently to look this up

NPellet avatar Aug 23 '22 10:08 NPellet

Hello, I am also facing the same issue, having this would be great! @NPellet did u manage to find a workaround?

shydefoo avatar Oct 19 '22 09:10 shydefoo

Not a big deal, but this would be great to have. 👍

selaci avatar Feb 14 '23 15:02 selaci

a button to view the parent (controlling) app of that app

I think this should be a separate ask. ApplicationSets for example don't have an actual home to view. Only Argo Apps themselves have a view. I'm not sure if anything else, other than ApplicationSets, have this issue. And to be clear, I really wish ApplicationSets had a view and that the API for ApplicationSets worked for that matter.

I suppose if the parent is an Argo App, that could conditionally show the button and then any Argo resource types that eventually get a UI view can get added to the supported button list later.

ericblackburn avatar May 24 '23 15:05 ericblackburn

2024 bump... I would also like to see multiple nested layers of the app of apps pattern in the UI. As a user, it would be nice to not have to drill down to get a full picture the complete hierarchy.

mathew-fleisch avatar May 22 '24 22:05 mathew-fleisch

Maybe the number of levels to display could be an option in argocd-cm ?

depending on use case displying of second level may be reuired or not, I beleve it is better to be controlled per application e.g if annotation argocd.argoproj.io/ui-transparent=true is added to application, application resources are visible on UI when parent app is opened

It may work better in conjuction with option to hide app from UI.

use case

  1. cicd bootsrap application creates solution discovery applicationset that discovers git repositories with solution deployment definitions and creates solution applications
  2. solution application creates environment discovetry applicationset creating application environment bootsrap applications
  3. application environment bootsrap application creates resources developers are not allowed to control (e.g. appproject, resource quotas, namespace) and actual solution environment application
cicd bootsrap application:
  - solution discovery applicationset:
      - solution1 application:
          - solution1 environment discovetry applicationset:
              - solution1 dev bootstrap application:   
                - solution1 dev appproject
                - solution1 dev resoursequota
                - solution1 dev namespace
                - solution1 dev application
      - solution2 application:
        - solution2 env discovery appset:
            - solution2 environment discovetry applicationset:
              - solution2 dev bootstrap  application:   
                - solution2 dev appproject
                - solution2 dev resoursequota
                - solution2 dev namespace
                - solution2 dev application
              - solution2 dev bootstrap  application:   
                - solution2 prod appproject
                - solution2 prod resoursequota
                - solution2 prod namespace
                - solution2 prod application

with all above after

  • hiding application environment bootsrap from application list on argocd ui
  • marking application environment bootsrap with argocd.argoproj.io/ui-transparent=true
  • putting all solution applications on dedicated project solutions while having each solution environment application in its own project

there would be

  • solutions project listing 1 app per solution
  • each solution app shows list of environments (environment is not transparant but has usual link one needs to click to see environment resources)

KonstantinNosov avatar Jul 25 '24 12:07 KonstantinNosov

Is there any features being planned to help with this? We also group app and its components using app of apps. And would love to be able to goto the root all view to see status of all child resources (or atleast 2 levels for our setup)

spy16x avatar Oct 12 '24 17:10 spy16x