Add Live Object Status page for Argo CD#2953
Conversation
| * Octopus Deploy 2025.4+ | ||
| * An Argo CD Instance deployment target (and associated gateway) | ||
| * [Annotations](/docs/argo-cd/annotations/index.md) on your Argo CD Applications, mapping them onto Octopus Deploy projects | ||
| * A deployment process containing an Argo CD step (either [Image Tag update](/docs/argo-cd/steps/update-application-image-tag) or [Update Application Manifests](/docs/argo-cd/steps/update-application-manifests) |
There was a problem hiding this comment.
Make the names of the steps consistent:
- Update Argo CD Application Manifests
- Update Argo CD Application Image Tags
| ## Where it is available | ||
| Using Argo CD Live Objet Status requires the following: | ||
| * Octopus Deploy 2025.4+ | ||
| * An Argo CD Instance deployment target (and associated gateway) |
There was a problem hiding this comment.
A registered Argo CD instance (and link to https://octopus.com/docs/argo-cd/instances)
| Octopus displays individual status at both the object and application level, along with a rolled-up summary at the Argo Instance. | ||
|
|
||
| Each kubernetes object created directly by the Argo CD Application will indicate its name, kind, namespace, sync and health status. | ||
| Derived kubernetes objects (eg Pods created as part of a deployment) don't have a sync-status, so will present a blank field. |
There was a problem hiding this comment.
This is the same as normal K8s YAML deployments, so I'm not sure if we need to explain this here. If this is useful information, we should also add it to the K8s live status
There was a problem hiding this comment.
it was more that the application will deliberately have different fields set
|  | ||
| ::: | ||
|
|
||
| ### Application status |
There was a problem hiding this comment.
The word Application is overloaded here - we need another term
| | Healthy | <i class="fa-solid fa-heart green"></i> | Object is in sync and reporting that it is running as expected | | ||
| | Unknown | <i class="fa-solid fa-question grey"></i> | We don't have up-to-date information about the live status of this object | | ||
| | Degraded | <i class="fa-solid fa-heart-crack red"></i> | Object has run into a problem, check the logs or events to find out more | | ||
| | Out of Sync | <i class="fa-solid fa-arrow-up orange"></i> | Object manifest is not the same as what was applied | |
There was a problem hiding this comment.
For Argo, out of sync also means the latest changes have not been applied yet
|
|
||
| :::div{.info} | ||
| Outwardly this is an identical capability to that available for [Kubernetes based projects](/docs/kubernet/live-object-status/index.md). | ||
| However when used with Argo CD, the [Kubernetes monitor](/docs/kubernetes/targets/kubernetes-agent/kubernetes-monitor) is *not* required. |
There was a problem hiding this comment.
Most places we say Kubernetes Agent - so maybe say that here instead of the monitor
There was a problem hiding this comment.
The Kuberenetes page says "to have live status, you must have the kubernetes monitor installed" (and explicitly links the monitor to live status, so I wanted to break that linkage.
There was a problem hiding this comment.
ok - updated to say that neither the agent nor the monitor are required
| | Healthy | <i class="fa-solid fa-heart green"></i> | Object is in sync and reporting that it is running as expected | | ||
| | Unknown | <i class="fa-solid fa-question grey"></i> | We don't have information about the live status of this object | | ||
| | Degraded | <i class="fa-solid fa-heart-crack red"></i> | Object has run into a problem, check the logs or events to find out more | | ||
| | Out of Sync | <i class="fa-solid fa-arrow-up orange"></i> | Object manifest in the cluster is different from that specified in tha Argo CD application's git repository | |
| Left = Current Cluster content | ||
| Right = Current git-repository content |
| | Position | Octopus | Argo CD | | ||
| |---|------------------------------------------------------------|-------------------------------------------------------------------| | ||
| | Left| Manifest written to git repository as part of last release | The current manifest in the cluster | | ||
| | Right | The current content of the application's resource in cluster | The manifest in the git repository, which will be applied on sync | |
There was a problem hiding this comment.
The current manifest in the cluster should be the same wording as The current content of the application's resource in cluster right? they both show the live YAML
There was a problem hiding this comment.
yeah - and how about we switch the table abourn 90 degrees to match the screen shapes :)
| #### Manifest Diffs | ||
| Octopus presents manifest diffs in the _opposite order_ to that shown in Argo. | ||
|
|
||
| In Argo, the left panel shows the manifest which is currently executing in the cluster, and the right-panel shows the manifest |
There was a problem hiding this comment.
currently executing reads weird.
In Argo, the left panel shows the live manifest in the cluster, and the right-panel shows the manifest...
| that will be deployed when the application/resource is synced. | ||
|
|
||
| In Octopus, the left panel indicates "what was mostly recently written to the git repository", while the right shows what is currently | ||
| in the live system (i.e. installed in the cluster). |
There was a problem hiding this comment.
right shows the live manifest.
|
|
||
| | | Left | Right | | ||
| |---------|--------------------------------------------------------------|-------------------------------------------------------------------| | ||
| | Octopus | Manifest written to git repository as part of last release | The current content of the application's resource in cluster | |
There was a problem hiding this comment.
The current content of the application's resource in cluster -> The live manifest in the cluster
There was a problem hiding this comment.
Is it worth keeping the text in Octopus-Right box matching Argo-Left box?
This adds a new section to the ArgoCD section to include a "Live Object Status" section.
This is similar to that found in the Kubernetes.