github.com/argoproj/argo-cd@v1.8.7/docs/roadmap.md (about)

     1  # Roadmap
     2  
     3  - [Roadmap](#roadmap)
     4      - [Core Functionality Bug Fixes](#core-functionality-bug-fixes)
     5      - [Performance](#performance)
     6      - [ApplicationsSet](#applicationsset)
     7      - [Large Applications support](#large-applications-support)
     8      - [Serviceability](#serviceability)
     9      - [GitOps Engine Enhancements](#gitops-engine-enhancements)
    10      - [GitOps Agent](#gitops-agent)
    11      - [Config Management Tools Integrations](#config-management-tools-integrations)
    12      - [Resource Actions Revamp](#resource-actions-revamp)
    13      - [Argo CD Notifications](#argo-cd-notifications)
    14      - [Automated Registry Monitoring](#automated-registry-monitoring)
    15      - [Application Details Page Usability](#application-details-page-usability)
    16      - [Cluster Management User Interface](#cluster-management-user-interface)
    17      - [Projects Enhancements](#projects-enhancements)
    18  
    19  ### Core Functionality Bug Fixes
    20  
    21  The core GitOps features still have several known bugs and limitations. The full list is available in [v1.7 milestone](
    22  https://github.com/argoproj/argo-cd/issues?q=is%3Aopen+is%3Aissue+label%3Abug+milestone%3A%22v1.7+%22+label%3Acomponent%3Acore)
    23  
    24  The most notable issues:
    25  
    26  * [Application is incorrectly reporting a diff](https://github.com/argoproj/argo-cd/issues/2865)
    27  * [Helm hooks are deleted right after creation](https://github.com/argoproj/argo-cd/issues/2737)
    28  * [Argo CD synchronization lasts incredibly long](https://github.com/argoproj/argo-cd/issues/3663)
    29  
    30  ### Performance
    31  
    32  * 2000+ Applications support. The user interface becomes notably slower if one Argo CD instance manages more than 1 thousand applications.
    33  A set of optimizations is required to fix that issue.
    34  
    35  * 100+ Clusters support. The cluster addon management use-case requires connecting a large number of clusters to one Argo CD controller.
    36  Currently Argo CD controller is unable to handle that many clusters. The solution is to support horizontal controller scaling and automated sharding.
    37  
    38  * Mono Repository support. Argo CD is not optimized for mono repositories with a large number of applications. With 50+ applications in the same repository, manifest generation performance drops significantly. The repository server optimization is required to improve it.
    39  
    40  ### ApplicationsSet
    41  
    42  Argo CD Applications allow splitting the cluster configuration into logic groups that are managed independently. However, the set of applications
    43  is a configuration that should be managed declaratively as well. The app-of-apps pattern solves this problem but still has some challenges such as
    44  maintenance overhead, security, and lack of some additional features.
    45  
    46  [ApplicationsSet](https://github.com/argoproj-labs/applicationset) project provides a better solution for managing applications across multiple environments.
    47  
    48  ### Large Applications support
    49  
    50  The application details page is not suitable to visualize applications that include a large number of resources (hundreds of resources). The page has to be reworked
    51  to improve user experience.
    52  
    53  ### Serviceability
    54  
    55  To make Argo CD successful we need to build tools that enable Argo CD administrators to handle scalability and performance issues in a self-service model.
    56  
    57  That includes more metrics, out of the box alerts and a cluster management user interface.
    58  
    59  ### GitOps Engine Enhancements
    60  
    61  The [GitOps Engine](https://github.com/argoproj/gitops-engine) is a library that implements core GitOps functions such as K8S resource reconciliation and diffing.
    62  A lot of Argo CD features are still not available in GitOps engine. The following features have to be contributed to the GitOps Engine:
    63  
    64  * an ability to customize resources health assessment and existing CRD health [assessment functions](https://github.com/argoproj/argo-cd/tree/master/resource_customizations).
    65  * resource diffing [customization](https://argoproj.github.io/argo-cd/user-guide/diffing/).
    66  * config management [tools](https://argoproj.github.io/argo-cd/user-guide/application_sources/) integration
    67  * unified syncing annotations [argoproj/gitops-engine#43](https://github.com/argoproj/gitops-engine/issues/43)
    68  
    69  ### GitOps Agent
    70  
    71  [GitOps Agent](https://github.com/argoproj/gitops-engine/tree/master/agent) is a continuation of GitOps engine work. The GitOps Agent leverages the GitOps Engine and provides
    72  access to many engine features via a simple CLI interface.
    73  
    74  ### Config Management Tools Integrations
    75  
    76  The community likes the first class support of Helm, Kustomize and keeps requesting support for more tools.
    77  Argo CD provides a mechanism to integrate with any config management tool. We need to investigate why
    78  it is not enough and implement missing features.
    79  
    80  ### Resource Actions Revamp
    81  
    82  Resource actions is very powerful but literally hidden feature. Documentation is missing and therefore
    83  adoption is poor. We need to document and promote it, and then iterate and work on enhancements:
    84  - hard to configure unless you are Argo CD ninja;
    85  - half done parameters support: we have backend but no UI/CLI for it;
    86  - configuration issue: it is impossible to share actions as a YAML file since ALL resource customizations are stored in one config map key;
    87  
    88  ### Argo CD Notifications
    89  
    90  [Argo CD Notifications](https://github.com/argoproj-labs/argocd-notifications) provides the ability to notify users about Argo CD Application
    91  changes as well as implement integrations such as update Github commit status, trigger Jenkins job, set Grafana label, etc.
    92  
    93  ### Automated Registry Monitoring
    94  
    95  [Argo CD Image Updater](https://github.com/argoproj-labs/argocd-image-updater) provides an ability to monitor Docker registries and automatically
    96  update image versions in the deployment repository. https://github.com/argoproj/argo-cd/issues/1648
    97  
    98  ### Application Details Page Usability
    99  
   100  Application details page has accumulated multiple usability and feature requests such as 
   101  [Node view](https://github.com/argoproj/argo-cd/issues/1483),
   102  Logs ([1](https://github.com/argoproj/argo-cd/issues/781), [2](https://github.com/argoproj/argo-cd/issues/3382)),
   103  Network view ([1](https://github.com/argoproj/argo-cd/issues/2892), [2](https://github.com/argoproj/argo-cd/issues/2338))
   104   [etc](https://github.com/argoproj/argo-cd/issues/2199).
   105  
   106  ### Cluster Management User Interface
   107  
   108  Argo CD has information about whole clusters, not just applications in it.
   109  We need to provide a user interface for cluster administrators that visualize cluster level resources.
   110  
   111  ### Projects Enhancements
   112  
   113  Argo CD projects accumulated a lot of debt:
   114  - Users don't know how to use project roles and SSO. It is one of the key features but not documented well. We need to document and promote it.
   115  - Project management UI has evolved organically and needs a complete redesign. We packaged everything into one sliding panel which is painful to use.
   116  - Enhancements: [#2718](https://github.com/argoproj/argo-cd/issues/2718), [#3598](https://github.com/argoproj/argo-cd/issues/3598)