1. Enhancement of the "Create Application" Action:

a. Helm Integration:
The inclusion of Helm support in the CreateApplication action is a significant asset. Helm is one of the most widely adopted package managers for Kubernetes.

Why it's essential: Helm helps define, install, and upgrade even the most intricate Kubernetes applications. Given its prevalence, not having this feature makes the plugin considerably less appealing.

b. Validate & Upsert Options:
The validate option introduces a layer of security and accuracy, ensuring configurations are verified before actual implementation.

The upsert option, which determines whether an existing application configuration should be overwritten, offers flexibility. It allows for uninterrupted updates and modifications, eliminating the need to manually delete and recreate configurations, ensuring continuity, and minimizing error chances. Additionally, it is not currently possible to delete an ArgoCD application through the plugin, which limits the plugin's capabilities to only creating applications. Without this option, updates are not possible.

2. Enhancement of the "Add Repository" Action:
a. Project Name Field:
The introduction of the project field when adding a repository allows users to specify which ArgoCD project the directory should be associated with.

Why it's essential: Without the Project Name option, one would need to manually log into the ArgoCD tool to add the repository to the project, rendering this action largely moot.

Comments

  • William, thank you for the idea. We are planning to implement the changes for the Erawan release, scheduled for February 2024.

  • Could you add a refresh action in and before synchronize Application.
    Because there is a time delta on Argcd to check a diff with the repo source and kubernetes.
    This causes the task to be completed because the check sync is too fast.

    Thank you

  • Christian, the Sync Application task is automated and it starts application synchronization on ArgoCD server (same effect as when you click on the Sync button on ArgoCD UI).
    If you want to wait until the application is ready, there is a task CheckApplicationStatus with Retry and Delay configurations which waits until the application is healthy and synced.

  • After committing the repository as long as i don't click to 'refresh'. Sync is not taken into account on the Argocd user interface.

  • The initial request is planned to be delivered in the 24.1 (Erawan) release through a container-based plugin. Additionally, we're currently developing support for this feature as a standard Jython plugin. This functionality will be incorporated into both the upcoming 24.3 (Fuji) Early Access release and the 24.3 GA version.

    Moreover, there's a request in the comments regarding enhancements to the Sync application mechanism, which is also planned for the 24.3 (Fuji) timeframe. It would be advisable to create a separate idea to facilitate easier tracking of this request. Furthermore, another related suggestion that was subsequently added will be considered as a consequence of the improvements made to the Sync mechanism (https://ideas.digital.ai/devops/Idea/Detail/4203).

  • The mentioned changes are available in 24.3 version.
    Please find more information here: https://docs.digital.ai/bundle/devops-release-version-v.24.3/page/release/how-to/argocd-plugin.html