You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/v2.1/guides/crossplane-with-argo-cd.md
+63Lines changed: 63 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -222,3 +222,66 @@ Set the environment variable `ARGOCD_K8S_CLIENT_QPS` to `300` for improved compa
222
222
The default value of `ARGOCD_K8S_CLIENT_QPS` is 50, modifying the value also updates `ARGOCD_K8S_CLIENT_BURST` as it
223
223
is default to `ARGOCD_K8S_CLIENT_QPS` x 2.
224
224
225
+
#### Cross-namespace resource hierarchy
226
+
227
+
Argo CD versions before v3.3.0 have a limitation displaying namespaced resources owned by cluster-scoped resources in the application tree. This affects Crossplane deployments where cluster-scoped resources like `ProviderRevision` create namespaced children like `Deployment` and `Service` resources.
228
+
229
+
##### The issue
230
+
231
+
When viewing a Crossplane application in Argo CD versions before v3.3.0, cluster-scoped resources and their cluster-scoped children appear correctly, but namespaced children don't appear in the resource tree.
- ❌ `Deployment` (namespaced child) is missing from the tree
237
+
238
+
This occurs because the gitops-engine's hierarchy traversal only processes resources within the same namespace, preventing cross-namespace parent-child relationships from being discovered.
239
+
240
+
{{<hint "important">}}
241
+
The missing resources are still deployed and managed by Argo CD. They just don't appear in the UI tree visualization.
242
+
{{</hint>}}
243
+
244
+
##### Example
245
+
246
+
```yaml
247
+
# This cluster-scoped parent appears in Argo CD
248
+
apiVersion: pkg.crossplane.io/v1
249
+
kind: ProviderRevision
250
+
metadata:
251
+
name: provider-aws-s3-96df8f51090d
252
+
253
+
---
254
+
# This namespaced child is missing from the Argo CD tree
255
+
apiVersion: apps/v1
256
+
kind: Deployment
257
+
metadata:
258
+
name: provider-aws-s3-96df8f51090d
259
+
namespace: crossplane-system
260
+
ownerReferences:
261
+
- apiVersion: pkg.crossplane.io/v1
262
+
kind: ProviderRevision
263
+
name: provider-aws-s3-96df8f51090d
264
+
controller: true
265
+
```
266
+
267
+
##### Resolution
268
+
269
+
This issue is fixed in Argo CD v3.3.0 and later. Upgrade to Argo CD v3.3.0 or later for full Crossplane resource visibility in the application tree.
270
+
271
+
After upgrading, verify the fix by expanding a `Provider` or `ProviderRevision` resource in the Argo CD UI and confirming that namespaced children like `Deployment` and `Service` resources now appear.
272
+
273
+
##### Workaround for older versions
274
+
275
+
If you can't upgrade to v3.3.0 immediately, use `kubectl` to verify namespaced resources:
276
+
277
+
```bash
278
+
# List all resources owned by a ProviderRevision
279
+
kubectl get all -n crossplane-system -l pkg.crossplane.io/revision=provider-aws-s3-96df8f51090d
280
+
281
+
# Check Deployments created by Providers
282
+
kubectl get deployments -n crossplane-system
283
+
```
284
+
285
+
GitOps synchronization, health status reporting, and automatic reconciliation continue to work correctly. Only the visual representation in the Argo CD UI is affected.
286
+
287
+
For more details, see [Argo CD issue #24379](https://github.com/argoproj/argo-cd/issues/24379) and [PR #24847](https://github.com/argoproj/argo-cd/pull/24847).
0 commit comments