Argo CD
Hard
Syncing & Deployment
A PVC in sync wave 0 uses a StorageClass with volumeBindingMode WaitForFirstConsumer, and the Deployment that mounts it is in wave 1. What happens when Argo CD syncs?
Select your answer:
Show answer and explanation
Answer: The sync stalls, since the claim stays Pending until a Pod uses it
Explanation
Argo CD waits for every resource in a wave to be healthy before it applies the next wave, and a PVC is Progressing while its phase is Pending. With WaitForFirstConsumer the claim only binds once a Pod using it is scheduled, but that Pod comes from the Deployment in wave 1. The 2 second ARGOCD_SYNC_WAVE_DELAY only spaces waves out and doesn't skip the health wait.
More hard Argo CD questions
- A Deployment managed by Argo CD rolls out an image tag that doesn't exist, and progressDeadlineSeconds is left at its default. When does Argo CD report the Deployment as Degraded?
- On a default Argo CD 3.x install, kubectl shows no health under an Application's status.resources even though the UI shows resource health. Why?
- What is a Sync Wave in Argo CD?
- How does Argo CD handle Kubernetes secrets?
- Which of the following is NOT a valid sync strategy in Argo CD?
- What is the purpose of resource hooks in Argo CD?