5 exercises — master the precise vocabulary of GitOps: desired vs. observed state, drift detection, reconciliation loops, the pull model's security advantages, and Argo CD-specific concepts.
0 / 45 completed
1 / 45
Argo CD reports application status: "OutOfSync — observed state: replicas: 2; desired state in Git: replicas: 3."
What does Argo CD do by default when it detects this drift, and what determines whether it acts automatically?
Drift detection is automatic in Argo CD; auto-remediation (sync) is opt-in per Application.
Argo CD sync modes:
Mode
Behaviour on drift
When to use
Manual sync (default)
Reports OutOfSync; waits for operator to click "Sync" or run argocd app sync
Production environments where human approval is required before changes
Auto-sync
Automatically applies a sync within seconds of detecting drift
Dev/staging environments; or production with high confidence in CI pipeline guardrails
Auto-sync + self-heal
Also automatically reverts any manual changes made to the cluster outside of Git
Strict GitOps environments where the cluster must always exactly match Git
The drift detection cycle:
Every 3 minutes (default):
1. Fetch latest commit from Git repo
2. Render manifests (Helm render, Kustomize build, plain YAML)
3. Compare rendered manifests with live cluster state
4. If difference found → mark as OutOfSync
5. If auto-sync enabled → trigger sync (apply manifests to cluster)
Key vocabulary:
• Desired state — the configuration declared in the Git repository (the source of truth)
• Observed state — the actual live configuration of resources in the Kubernetes cluster
• Drift — any divergence between desired state and observed state
• Sync — the Argo CD operation that applies manifests to bring the cluster into alignment with Git
• OutOfSync — Argo CD's status label when drift is detected
• Self-heal — an Argo CD option that automatically reverts manual cluster changes that deviate from Git
2 / 45
A platform engineer explains: "The GitOps operator runs a reconciliation loop every 3 minutes. It compares the desired state in the Git repository against the observed state of the cluster and reconciles any differences."
What does "reconcile" mean in this GitOps context?
Reconciliation means actively closing the gap — not just detecting or reporting it.
Reconciliation in practice:
Scenario
Desired (Git)
Observed (cluster)
Reconciliation action
Replicas drifted
replicas: 3
replicas: 2
Scale up: create 1 pod
New resource added to Git
ConfigMap present
ConfigMap missing
Create ConfigMap
Resource removed from Git
Service absent
Service exists
Delete Service (if pruning enabled)
Manual change on cluster
image: app:1.4.0
image: app:1.5.0 (manual)
Revert to app:1.4.0 (with self-heal)
The reconciliation loop is the core of GitOps reliability:
• Continuous — runs on a schedule (Argo CD: every 3 min default) and on Git commit webhooks
• Idempotent — running the same sync multiple times produces no additional changes if already converged
• Eventually consistent — the cluster converges to the desired state; transient failures are retried
Kubernetes controllers also use reconciliation:
The same pattern appears in every Kubernetes controller: the ReplicaSet controller reconciles pod count; the Deployment controller reconciles rollout state. GitOps operators apply the same model at the application configuration level.
Key vocabulary:
• Reconciliation loop — a continuous compare-and-act cycle that converges actual state toward desired state
• Pruning — the GitOps option to delete cluster resources that no longer appear in the Git repository
• Convergence — the eventual alignment of observed state with desired state after reconciliation
• Eventually consistent — a system property where state convergence is guaranteed but may not be instantaneous
3 / 45
A security architect explains the difference between CI/CD push-based deployment (the pipeline runs kubectl apply against the cluster) and GitOps pull-based deployment (an in-cluster operator fetches Git and applies changes).
Which security benefit makes the GitOps pull model preferable for sensitive production clusters?
In a push model, your CI/CD pipeline needs a kubeconfig with cluster-admin permissions stored as a secret — a significant blast radius if that secret is compromised.
Push model security profile:
CI server (external) ──── kubeconfig secret ────► kubectl apply ──► cluster
↑ If leaked: full cluster access from the internet
Pull model security profile:
Git repo (external) ◄──── Argo CD operator (inside cluster) reads Git
Cluster never exposes kubectl API to external systems
Only outbound read access to Git is needed
Security benefits of the pull model:
Concern
Push model
Pull model (GitOps)
Credential exposure
Kubeconfig stored in CI secrets; accessible by CI admins and pipeline scripts
No external credentials needed; only Git read access from inside cluster
Cluster API exposure
Kubernetes API must be reachable from CI runners (internet or VPN)
Kubernetes API can be private; only internal operator needs access
Blast radius
Compromised CI = cluster access
Compromised CI = can only push to Git (still needs PR approval)
Audit trail
Pipeline logs; hard to trace who approved what
Every deployment is a Git commit with a PR author and reviewer
Key vocabulary:
• Pull model — the in-cluster GitOps operator pulls configuration from Git; no external system pushes to the cluster
• Push model — a CI/CD pipeline pushes changes directly to the cluster using stored credentials
• Blast radius — the scope of damage that can result if a security credential or system is compromised
• Kubeconfig — a file containing cluster endpoint, authentication credentials, and context for kubectl access
4 / 45
A developer uses Helm to manage releases independently, relying on helm rollback to revert a bad deploy. The platform team migrates the same Helm chart to Argo CD management.
What does an Argo CD-managed Helm release specifically not do that a standalone Helm release provides?
When Argo CD manages a Helm chart, it renders the templates and applies them to the cluster — but it does not preserve Helm's release versioning model.
Argo CD renders chart + applies manifests → cluster state matches Git
helm history myapp → shows revisions, but Argo CD manages them
helm rollback myapp 1 → may conflict with Argo CD's desired state;
will be overwritten at next sync
git revert HEAD~1 → push → Argo CD detects new commit → syncs cluster to reverted state
Why this matters in practice:
• helm rollback on an Argo CD-managed release creates a temporary divergence; Argo CD will detect it as drift and re-sync back to the Git state on the next reconciliation loop — effectively undoing the helm rollback
• In GitOps, Git is the single source of truth; any out-of-band changes (including helm rollback) are treated as drift and eventually overwritten
Key vocabulary:
• Helm release history — Helm's versioned record of each install/upgrade, stored as Secrets in the cluster; enables helm rollback
• Argo CD sync — Argo CD's apply of Git-rendered manifests to the cluster; does not create or update Helm release history entries
• Out-of-band change — a modification to the cluster made outside the GitOps pipeline (kubectl, helm CLI); treated as drift and reconciled away
5 / 45
A platform team manages 40 microservices in Argo CD. Initially each Argo CD Application resource is created manually via the UI. They migrate to an "App of Apps" pattern — one parent Application that manages Application resources for all 40 services as its own GitOps payload.
What problem does the App of Apps pattern solve?
The App of Apps pattern applies GitOps discipline to the application registry itself — the fleet of Argo CD Application resources becomes a GitOps-managed artifact.
The problem without App of Apps:
Adding a new service:
→ log into Argo CD UI → click "New App" → configure 12 fields → save
→ no Git record of who created it, what options were set, or when
→ to recreate the Argo CD setup after a disaster: repeat manually 40 times
With App of Apps:
Git repo:
apps/
parent-app.yaml ← Argo CD Application that points to this directory
services/
payments.yaml ← Argo CD Application resource for payments service
orders.yaml ← Argo CD Application resource for orders service
... ← 40 Application manifests, all in Git
Adding a new service: create PR adding new-service.yaml → merge → Argo CD
parent app reconciles → creates the new Application → syncs the service
Benefits of App of Apps:
Benefit
Details
GitOps for Argo CD itself
Application definitions are versioned, reviewable, and auditable commits
Disaster recovery
Rebuild all 40 Applications on a new cluster: kubectl apply -f parent-app.yaml
Onboarding automation
New service onboarding is a PR; no Argo CD admin access required
Consistent configuration
ApplicationSet (the evolution of App of Apps) generates Applications from a template — no per-app configuration drift
Key vocabulary:
• App of Apps — an Argo CD pattern where a parent Application manages child Application resources, bringing the application registry under GitOps control
• ApplicationSet — a newer Argo CD resource that generates multiple Application resources from a template and a generator (git directory, cluster list, etc.)
• Fleet management — operating and governing a large number of Kubernetes applications or clusters from a central control plane
6 / 45
Sarah: "Hey team, I've just submitted a PR to update the service's image tag in our Git repository. It should be deployed automatically within a few minutes, right?"
Mark (Lead DevOps): "Not quite, Sarah. We're using Argo CD. It's constantly watching for changes in our desired state defined in Git. When it detects a difference – like your updated image tag – it initiates a deployment to bring the cluster into sync. But before deploying, it checks if the change is safe and doesn't introduce any conflicts or break existing configurations."
This scenario highlights Argo CD's proactive nature. Option 2 is incorrect because Argo CD *doesn't* blindly deploy changes; it performs validation first. Options A and D are also wrong as they misrepresent how Argo CD operates – it doesn't directly trigger `kubectl apply` or require manual intervention after a PR merge. Option 3 accurately describes Argo CD's core function: validating the proposed change before deploying to ensure stability and prevent issues.
7 / 45
During a Slack discussion about a recent PR update to deploy a new version of the `payment-service`, David asks: "So, Argo CD is just watching our Git repo and automatically deploying when it sees changes? What if there's a conflict with another deployment in progress?" Maria responds: "It's more sophisticated than that, David. Argo CD uses a 'drift detection' mechanism to identify discrepancies between the desired state in Git and the actual state of the cluster. It then automatically triggers a deployment to resolve those differences, but it also has built-in safeguards like dependency locking and version constraints to prevent conflicts."
The correct answer highlights Argo CD's proactive 'drift detection' and automated deployment capabilities. It's crucial to understand that GitOps isn't just about passively watching Git; it's about continuous reconciliation. Options A and D misrepresent the core functionality, while option B is overly restrictive—Argo CD doesn't halt *all* deployments. The key concept here is proactive monitoring and automated resolution of discrepancies, coupled with safeguards to mitigate risk.
8 / 45
Mark, the Lead DevOps engineer, is explaining Argo CD to a new team member, Alex. Mark says: 'Essentially, when you push a change to Git – let's say updating the version of our `auth-service` – Argo CD detects that and automatically applies it to the cluster. It's like having a constant feedback loop ensuring everything stays in sync. However, there's a safety net in place. Before deploying, Argo CD checks if the change is safe and doesn't introduce any conflicts or break existing configurations.' Alex asks: 'But what *exactly* does that 'safety net' do? Does it just stop me from breaking things, or is there more to it?'
This question tests understanding of Argo CD's core safety mechanisms. Option A is incorrect because a full rollback isn't typical; it's more granular. Option B is also wrong – Argo CD doesn't automatically roll back the entire cluster. Option C accurately describes the dependency locking and version constraints, which are key to preventing conflicts and ensuring safe deployments. Option D describes a manual approval process, not the automated safety net that Argo CD provides.
9 / 45
During a standup update, John says: "I've updated the Helm chart for our `user-service` to include a new feature flag. Argo CD should automatically deploy it.". Lisa, a junior developer, asks: 'But what if the new feature flag introduces a breaking change? Will Argo CD just blindly apply the changes?'
This question tests understanding of Argo CD's conflict resolution. The correct answer highlights that Argo CD continuously monitors the cluster state against the desired state in Git. When a change is detected, it performs a comparison to identify potential conflicts and, importantly, will roll back the deployment if incompatibilities are found – this is a core principle of GitOps safety. Options A incorrectly suggests a lack of conflict resolution; B accurately describes Argo CD's behavior; C misrepresents the pre-deployment check as purely compatibility; and D overstates the autonomous nature of Argo CD.
10 / 45
PR Description:
Subject: Update Service A Image Tag
Body:
Hi team,
Please review this PR to update the image tag for service A from 1.2.3 to 1.2.4. This is a minor version bump and should be straightforward. Argo CD should automatically deploy this change.
Thanks!
—John
This question tests understanding of how Argo CD reacts to changes in Git. The correct answer describes the standard workflow: the PR signals a change, Argo CD detects it and initiates an automated deployment based on the desired state defined in Git. Options A and B incorrectly suggest direct control or bypassing validation; option C is partially accurate but misses the core concept of desired state reconciliation, while option D misrepresents the automatic nature of Argo CD.
11 / 45
Sarah: "Hey team, I've just submitted a PR to update the service's image tag in our Git repository. It should be deployed automatically within a few minutes, right?"
Mark (Lead DevOps): "Not quite, Sarah. We're using Argo CD. It's constantly watching for changes in our desired state defined in Git. When it detects a difference – like your updated image tag – it initiates a deployment to bring the cluster into sync. But before deploying, it checks if the change is safe and doesn't introduce any conflicts or break existing configurations."
This scenario highlights Argo CD's proactive nature. Option 2 is incorrect because Argo CD *doesn't* blindly deploy changes; it performs validation first. Options A and D are also wrong as they misrepresent how Argo CD operates – it doesn't directly trigger `kubectl apply` or require manual intervention after a PR merge. Option 3 accurately describes Argo CD's core function: validating the proposed change before deploying to ensure stability and prevent issues.
12 / 45
During a Slack discussion about a recent PR update to deploy a new version of the `payment-service`, David asks: "So, Argo CD is just watching our Git repo and automatically deploying when it sees changes? What if there's a conflict with another deployment in progress?" Maria responds: "It's more sophisticated than that, David. Argo CD uses a 'drift detection' mechanism to identify discrepancies between the desired state in Git and the actual state of the cluster. It then automatically triggers a deployment to resolve those differences, but it also has built-in safeguards like dependency locking and version constraints to prevent conflicts."
The correct answer highlights Argo CD's proactive 'drift detection' and automated deployment capabilities. It's crucial to understand that GitOps isn't just about passively watching Git; it's about continuous reconciliation. Options A and D misrepresent the core functionality, while option B is overly restrictive—Argo CD doesn't halt *all* deployments. The key concept here is proactive monitoring and automated resolution of discrepancies, coupled with safeguards to mitigate risk.
13 / 45
Mark, the Lead DevOps engineer, is explaining Argo CD to a new team member, Alex. Mark says: 'Essentially, when you push a change to Git – let's say updating the version of our `auth-service` – Argo CD detects that and automatically applies it to the cluster. It's like having a constant feedback loop ensuring everything stays in sync. However, there's a safety net in place. Before deploying, Argo CD checks if the change is safe and doesn't introduce any conflicts or break existing configurations.' Alex asks: 'But what *exactly* does that 'safety net' do? Does it just stop me from breaking things, or is there more to it?'
This question tests understanding of Argo CD's core safety mechanisms. Option A is incorrect because a full rollback isn't typical; it's more granular. Option B is also wrong – Argo CD doesn't automatically roll back the entire cluster. Option C accurately describes the dependency locking and version constraints, which are key to preventing conflicts and ensuring safe deployments. Option D describes a manual approval process, not the automated safety net that Argo CD provides.
14 / 45
During a standup update, John says: "I've updated the Helm chart for our `user-service` to include a new feature flag. Argo CD should automatically deploy it.". Lisa, a junior developer, asks: 'But what if the new feature flag introduces a breaking change? Will Argo CD just blindly apply the changes?'
This question tests understanding of Argo CD's conflict resolution. The correct answer highlights that Argo CD continuously monitors the cluster state against the desired state in Git. When a change is detected, it performs a comparison to identify potential conflicts and, importantly, will roll back the deployment if incompatibilities are found – this is a core principle of GitOps safety. Options A incorrectly suggests a lack of conflict resolution; B accurately describes Argo CD's behavior; C misrepresents the pre-deployment check as purely compatibility; and D overstates the autonomous nature of Argo CD.
15 / 45
PR Description:
Subject: Update Service A Image Tag
Body:
Hi team,
Please review this PR to update the image tag for service A from 1.2.3 to 1.2.4. This is a minor version bump and should be straightforward. Argo CD should automatically deploy this change.
Thanks!
—John
This question tests understanding of how Argo CD reacts to changes in Git. The correct answer describes the standard workflow: the PR signals a change, Argo CD detects it and initiates an automated deployment based on the desired state defined in Git. Options A and B incorrectly suggest direct control or bypassing validation; option C is partially accurate but misses the core concept of desired state reconciliation, while option D misrepresents the automatic nature of Argo CD.
16 / 45
Sarah: "Hey team, I've just submitted a PR to update the service's image tag in our Git repository. It should be deployed automatically within a few minutes, right?"
Mark (Lead DevOps): "Not quite, Sarah. We're using Argo CD. It's constantly watching for changes in our desired state defined in Git. When it detects a difference – like your updated image tag – it initiates a deployment to bring the cluster into sync. But before deploying, it checks if the change is safe and doesn't introduce any conflicts or break existing configurations."
This scenario highlights Argo CD's proactive nature. Option 2 is incorrect because Argo CD *doesn't* blindly deploy changes; it performs validation first. Options A and D are also wrong as they misrepresent how Argo CD operates – it doesn't directly trigger `kubectl apply` or require manual intervention after a PR merge. Option 3 accurately describes Argo CD's core function: validating the proposed change before deploying to ensure stability and prevent issues.
17 / 45
During a Slack discussion about a recent PR update to deploy a new version of the `payment-service`, David asks: "So, Argo CD is just watching our Git repo and automatically deploying when it sees changes? What if there's a conflict with another deployment in progress?" Maria responds: "It's more sophisticated than that, David. Argo CD uses a 'drift detection' mechanism to identify discrepancies between the desired state in Git and the actual state of the cluster. It then automatically triggers a deployment to resolve those differences, but it also has built-in safeguards like dependency locking and version constraints to prevent conflicts."
The correct answer highlights Argo CD's proactive 'drift detection' and automated deployment capabilities. It's crucial to understand that GitOps isn't just about passively watching Git; it's about continuous reconciliation. Options A and D misrepresent the core functionality, while option B is overly restrictive—Argo CD doesn't halt *all* deployments. The key concept here is proactive monitoring and automated resolution of discrepancies, coupled with safeguards to mitigate risk.
18 / 45
Mark, the Lead DevOps engineer, is explaining Argo CD to a new team member, Alex. Mark says: 'Essentially, when you push a change to Git – let's say updating the version of our `auth-service` – Argo CD detects that and automatically applies it to the cluster. It's like having a constant feedback loop ensuring everything stays in sync. However, there's a safety net in place. Before deploying, Argo CD checks if the change is safe and doesn't introduce any conflicts or break existing configurations.' Alex asks: 'But what *exactly* does that 'safety net' do? Does it just stop me from breaking things, or is there more to it?'
This question tests understanding of Argo CD's core safety mechanisms. Option A is incorrect because a full rollback isn't typical; it's more granular. Option B is also wrong – Argo CD doesn't automatically roll back the entire cluster. Option C accurately describes the dependency locking and version constraints, which are key to preventing conflicts and ensuring safe deployments. Option D describes a manual approval process, not the automated safety net that Argo CD provides.
19 / 45
During a standup update, John says: "I've updated the Helm chart for our `user-service` to include a new feature flag. Argo CD should automatically deploy it.". Lisa, a junior developer, asks: 'But what if the new feature flag introduces a breaking change? Will Argo CD just blindly apply the changes?'
This question tests understanding of Argo CD's conflict resolution. The correct answer highlights that Argo CD continuously monitors the cluster state against the desired state in Git. When a change is detected, it performs a comparison to identify potential conflicts and, importantly, will roll back the deployment if incompatibilities are found – this is a core principle of GitOps safety. Options A incorrectly suggests a lack of conflict resolution; B accurately describes Argo CD's behavior; C misrepresents the pre-deployment check as purely compatibility; and D overstates the autonomous nature of Argo CD.
20 / 45
PR Description:
Subject: Update Service A Image Tag
Body:
Hi team,
Please review this PR to update the image tag for service A from 1.2.3 to 1.2.4. This is a minor version bump and should be straightforward. Argo CD should automatically deploy this change.
Thanks!
—John
This question tests understanding of how Argo CD reacts to changes in Git. The correct answer describes the standard workflow: the PR signals a change, Argo CD detects it and initiates an automated deployment based on the desired state defined in Git. Options A and B incorrectly suggest direct control or bypassing validation; option C is partially accurate but misses the core concept of desired state reconciliation, while option D misrepresents the automatic nature of Argo CD.
21 / 45
Sarah: "Hey team, I've just submitted a PR to update the service's image tag in our Git repository. It should be deployed automatically within a few minutes, right?"
Mark (Lead DevOps): "Not quite, Sarah. We're using Argo CD. It's constantly watching for changes in our desired state defined in Git. When it detects a difference – like your updated image tag – it initiates a deployment to bring the cluster into sync. But before deploying, it checks if the change is safe and doesn't introduce any conflicts or break existing configurations."
This scenario highlights Argo CD's proactive nature. Option 2 is incorrect because Argo CD *doesn't* blindly deploy changes; it performs validation first. Options A and D are also wrong as they misrepresent how Argo CD operates – it doesn't directly trigger `kubectl apply` or require manual intervention after a PR merge. Option 3 accurately describes Argo CD's core function: validating the proposed change before deploying to ensure stability and prevent issues.
22 / 45
During a Slack discussion about a recent PR update to deploy a new version of the `payment-service`, David asks: "So, Argo CD is just watching our Git repo and automatically deploying when it sees changes? What if there's a conflict with another deployment in progress?" Maria responds: "It's more sophisticated than that, David. Argo CD uses a 'drift detection' mechanism to identify discrepancies between the desired state in Git and the actual state of the cluster. It then automatically triggers a deployment to resolve those differences, but it also has built-in safeguards like dependency locking and version constraints to prevent conflicts."
The correct answer highlights Argo CD's proactive 'drift detection' and automated deployment capabilities. It's crucial to understand that GitOps isn't just about passively watching Git; it's about continuous reconciliation. Options A and D misrepresent the core functionality, while option B is overly restrictive—Argo CD doesn't halt *all* deployments. The key concept here is proactive monitoring and automated resolution of discrepancies, coupled with safeguards to mitigate risk.
23 / 45
Mark, the Lead DevOps engineer, is explaining Argo CD to a new team member, Alex. Mark says: 'Essentially, when you push a change to Git – let's say updating the version of our `auth-service` – Argo CD detects that and automatically applies it to the cluster. It's like having a constant feedback loop ensuring everything stays in sync. However, there's a safety net in place. Before deploying, Argo CD checks if the change is safe and doesn't introduce any conflicts or break existing configurations.' Alex asks: 'But what *exactly* does that 'safety net' do? Does it just stop me from breaking things, or is there more to it?'
This question tests understanding of Argo CD's core safety mechanisms. Option A is incorrect because a full rollback isn't typical; it's more granular. Option B is also wrong – Argo CD doesn't automatically roll back the entire cluster. Option C accurately describes the dependency locking and version constraints, which are key to preventing conflicts and ensuring safe deployments. Option D describes a manual approval process, not the automated safety net that Argo CD provides.
24 / 45
During a standup update, John says: "I've updated the Helm chart for our `user-service` to include a new feature flag. Argo CD should automatically deploy it.". Lisa, a junior developer, asks: 'But what if the new feature flag introduces a breaking change? Will Argo CD just blindly apply the changes?'
This question tests understanding of Argo CD's conflict resolution. The correct answer highlights that Argo CD continuously monitors the cluster state against the desired state in Git. When a change is detected, it performs a comparison to identify potential conflicts and, importantly, will roll back the deployment if incompatibilities are found – this is a core principle of GitOps safety. Options A incorrectly suggests a lack of conflict resolution; B accurately describes Argo CD's behavior; C misrepresents the pre-deployment check as purely compatibility; and D overstates the autonomous nature of Argo CD.
25 / 45
PR Description:
Subject: Update Service A Image Tag
Body:
Hi team,
Please review this PR to update the image tag for service A from 1.2.3 to 1.2.4. This is a minor version bump and should be straightforward. Argo CD should automatically deploy this change.
Thanks!
—John
This question tests understanding of how Argo CD reacts to changes in Git. The correct answer describes the standard workflow: the PR signals a change, Argo CD detects it and initiates an automated deployment based on the desired state defined in Git. Options A and B incorrectly suggest direct control or bypassing validation; option C is partially accurate but misses the core concept of desired state reconciliation, while option D misrepresents the automatic nature of Argo CD.
26 / 45
Sarah: "Hey team, I've just submitted a PR to update the service's image tag in our Git repository. It should be deployed automatically within a few minutes, right?"
Mark (Lead DevOps): "Not quite, Sarah. We're using Argo CD. It's constantly watching for changes in our desired state defined in Git. When it detects a difference – like your updated image tag – it initiates a deployment to bring the cluster into sync. But before deploying, it checks if the change is safe and doesn't introduce any conflicts or break existing configurations."
This scenario highlights Argo CD's proactive nature. Option 2 is incorrect because Argo CD *doesn't* blindly deploy changes; it performs validation first. Options A and D are also wrong as they misrepresent how Argo CD operates – it doesn't directly trigger `kubectl apply` or require manual intervention after a PR merge. Option 3 accurately describes Argo CD's core function: validating the proposed change before deploying to ensure stability and prevent issues.
27 / 45
During a Slack discussion about a recent PR update to deploy a new version of the `payment-service`, David asks: "So, Argo CD is just watching our Git repo and automatically deploying when it sees changes? What if there's a conflict with another deployment in progress?" Maria responds: "It's more sophisticated than that, David. Argo CD uses a 'drift detection' mechanism to identify discrepancies between the desired state in Git and the actual state of the cluster. It then automatically triggers a deployment to resolve those differences, but it also has built-in safeguards like dependency locking and version constraints to prevent conflicts."
The correct answer highlights Argo CD's proactive 'drift detection' and automated deployment capabilities. It's crucial to understand that GitOps isn't just about passively watching Git; it's about continuous reconciliation. Options A and D misrepresent the core functionality, while option B is overly restrictive—Argo CD doesn't halt *all* deployments. The key concept here is proactive monitoring and automated resolution of discrepancies, coupled with safeguards to mitigate risk.
28 / 45
Mark, the Lead DevOps engineer, is explaining Argo CD to a new team member, Alex. Mark says: 'Essentially, when you push a change to Git – let's say updating the version of our `auth-service` – Argo CD detects that and automatically applies it to the cluster. It's like having a constant feedback loop ensuring everything stays in sync. However, there's a safety net in place. Before deploying, Argo CD checks if the change is safe and doesn't introduce any conflicts or break existing configurations.' Alex asks: 'But what *exactly* does that 'safety net' do? Does it just stop me from breaking things, or is there more to it?'
This question tests understanding of Argo CD's core safety mechanisms. Option A is incorrect because a full rollback isn't typical; it's more granular. Option B is also wrong – Argo CD doesn't automatically roll back the entire cluster. Option C accurately describes the dependency locking and version constraints, which are key to preventing conflicts and ensuring safe deployments. Option D describes a manual approval process, not the automated safety net that Argo CD provides.
29 / 45
During a standup update, John says: "I've updated the Helm chart for our `user-service` to include a new feature flag. Argo CD should automatically deploy it.". Lisa, a junior developer, asks: 'But what if the new feature flag introduces a breaking change? Will Argo CD just blindly apply the changes?'
This question tests understanding of Argo CD's conflict resolution. The correct answer highlights that Argo CD continuously monitors the cluster state against the desired state in Git. When a change is detected, it performs a comparison to identify potential conflicts and, importantly, will roll back the deployment if incompatibilities are found – this is a core principle of GitOps safety. Options A incorrectly suggests a lack of conflict resolution; B accurately describes Argo CD's behavior; C misrepresents the pre-deployment check as purely compatibility; and D overstates the autonomous nature of Argo CD.
30 / 45
PR Description:
Subject: Update Service A Image Tag
Body:
Hi team,
Please review this PR to update the image tag for service A from 1.2.3 to 1.2.4. This is a minor version bump and should be straightforward. Argo CD should automatically deploy this change.
Thanks!
—John
This question tests understanding of how Argo CD reacts to changes in Git. The correct answer describes the standard workflow: the PR signals a change, Argo CD detects it and initiates an automated deployment based on the desired state defined in Git. Options A and B incorrectly suggest direct control or bypassing validation; option C is partially accurate but misses the core concept of desired state reconciliation, while option D misrepresents the automatic nature of Argo CD.
31 / 45
Sarah: "Hey team, I've just submitted a PR to update the service's image tag in our Git repository. It should be deployed automatically within a few minutes, right?"
Mark (Lead DevOps): "Not quite, Sarah. We're using Argo CD. It's constantly watching for changes in our desired state defined in Git. When it detects a difference – like your updated image tag – it initiates a deployment to bring the cluster into sync. But before deploying, it checks if the change is safe and doesn't introduce any conflicts or break existing configurations."
This scenario highlights Argo CD's proactive nature. Option 2 is incorrect because Argo CD *doesn't* blindly deploy changes; it performs validation first. Options A and D are also wrong as they misrepresent how Argo CD operates – it doesn't directly trigger `kubectl apply` or require manual intervention after a PR merge. Option 3 accurately describes Argo CD's core function: validating the proposed change before deploying to ensure stability and prevent issues.
32 / 45
During a Slack discussion about a recent PR update to deploy a new version of the `payment-service`, David asks: "So, Argo CD is just watching our Git repo and automatically deploying when it sees changes? What if there's a conflict with another deployment in progress?" Maria responds: "It's more sophisticated than that, David. Argo CD uses a 'drift detection' mechanism to identify discrepancies between the desired state in Git and the actual state of the cluster. It then automatically triggers a deployment to resolve those differences, but it also has built-in safeguards like dependency locking and version constraints to prevent conflicts."
The correct answer highlights Argo CD's proactive 'drift detection' and automated deployment capabilities. It's crucial to understand that GitOps isn't just about passively watching Git; it's about continuous reconciliation. Options A and D misrepresent the core functionality, while option B is overly restrictive—Argo CD doesn't halt *all* deployments. The key concept here is proactive monitoring and automated resolution of discrepancies, coupled with safeguards to mitigate risk.
33 / 45
Mark, the Lead DevOps engineer, is explaining Argo CD to a new team member, Alex. Mark says: 'Essentially, when you push a change to Git – let's say updating the version of our `auth-service` – Argo CD detects that and automatically applies it to the cluster. It's like having a constant feedback loop ensuring everything stays in sync. However, there's a safety net in place. Before deploying, Argo CD checks if the change is safe and doesn't introduce any conflicts or break existing configurations.' Alex asks: 'But what *exactly* does that 'safety net' do? Does it just stop me from breaking things, or is there more to it?'
This question tests understanding of Argo CD's core safety mechanisms. Option A is incorrect because a full rollback isn't typical; it's more granular. Option B is also wrong – Argo CD doesn't automatically roll back the entire cluster. Option C accurately describes the dependency locking and version constraints, which are key to preventing conflicts and ensuring safe deployments. Option D describes a manual approval process, not the automated safety net that Argo CD provides.
34 / 45
During a standup update, John says: "I've updated the Helm chart for our `user-service` to include a new feature flag. Argo CD should automatically deploy it.". Lisa, a junior developer, asks: 'But what if the new feature flag introduces a breaking change? Will Argo CD just blindly apply the changes?'
This question tests understanding of Argo CD's conflict resolution. The correct answer highlights that Argo CD continuously monitors the cluster state against the desired state in Git. When a change is detected, it performs a comparison to identify potential conflicts and, importantly, will roll back the deployment if incompatibilities are found – this is a core principle of GitOps safety. Options A incorrectly suggests a lack of conflict resolution; B accurately describes Argo CD's behavior; C misrepresents the pre-deployment check as purely compatibility; and D overstates the autonomous nature of Argo CD.
35 / 45
PR Description:
Subject: Update Service A Image Tag
Body:
Hi team,
Please review this PR to update the image tag for service A from 1.2.3 to 1.2.4. This is a minor version bump and should be straightforward. Argo CD should automatically deploy this change.
Thanks!
—John
This question tests understanding of how Argo CD reacts to changes in Git. The correct answer describes the standard workflow: the PR signals a change, Argo CD detects it and initiates an automated deployment based on the desired state defined in Git. Options A and B incorrectly suggest direct control or bypassing validation; option C is partially accurate but misses the core concept of desired state reconciliation, while option D misrepresents the automatic nature of Argo CD.
36 / 45
Sarah: "Hey team, I've just submitted a PR to update the service's image tag in our Git repository. It should be deployed automatically within a few minutes, right?"
Mark (Lead DevOps): "Not quite, Sarah. We're using Argo CD. It's constantly watching for changes in our desired state defined in Git. When it detects a difference – like your updated image tag – it initiates a deployment to bring the cluster into sync. But before deploying, it checks if the change is safe and doesn't introduce any conflicts or break existing configurations."
This scenario highlights Argo CD's proactive nature. Option 2 is incorrect because Argo CD *doesn't* blindly deploy changes; it performs validation first. Options A and D are also wrong as they misrepresent how Argo CD operates – it doesn't directly trigger `kubectl apply` or require manual intervention after a PR merge. Option 3 accurately describes Argo CD's core function: validating the proposed change before deploying to ensure stability and prevent issues.
37 / 45
During a Slack discussion about a recent PR update to deploy a new version of the `payment-service`, David asks: "So, Argo CD is just watching our Git repo and automatically deploying when it sees changes? What if there's a conflict with another deployment in progress?" Maria responds: "It's more sophisticated than that, David. Argo CD uses a 'drift detection' mechanism to identify discrepancies between the desired state in Git and the actual state of the cluster. It then automatically triggers a deployment to resolve those differences, but it also has built-in safeguards like dependency locking and version constraints to prevent conflicts."
The correct answer highlights Argo CD's proactive 'drift detection' and automated deployment capabilities. It's crucial to understand that GitOps isn't just about passively watching Git; it's about continuous reconciliation. Options A and D misrepresent the core functionality, while option B is overly restrictive—Argo CD doesn't halt *all* deployments. The key concept here is proactive monitoring and automated resolution of discrepancies, coupled with safeguards to mitigate risk.
38 / 45
Mark, the Lead DevOps engineer, is explaining Argo CD to a new team member, Alex. Mark says: 'Essentially, when you push a change to Git – let's say updating the version of our `auth-service` – Argo CD detects that and automatically applies it to the cluster. It's like having a constant feedback loop ensuring everything stays in sync. However, there's a safety net in place. Before deploying, Argo CD checks if the change is safe and doesn't introduce any conflicts or break existing configurations.' Alex asks: 'But what *exactly* does that 'safety net' do? Does it just stop me from breaking things, or is there more to it?'
This question tests understanding of Argo CD's core safety mechanisms. Option A is incorrect because a full rollback isn't typical; it's more granular. Option B is also wrong – Argo CD doesn't automatically roll back the entire cluster. Option C accurately describes the dependency locking and version constraints, which are key to preventing conflicts and ensuring safe deployments. Option D describes a manual approval process, not the automated safety net that Argo CD provides.
39 / 45
During a standup update, John says: "I've updated the Helm chart for our `user-service` to include a new feature flag. Argo CD should automatically deploy it.". Lisa, a junior developer, asks: 'But what if the new feature flag introduces a breaking change? Will Argo CD just blindly apply the changes?'
This question tests understanding of Argo CD's conflict resolution. The correct answer highlights that Argo CD continuously monitors the cluster state against the desired state in Git. When a change is detected, it performs a comparison to identify potential conflicts and, importantly, will roll back the deployment if incompatibilities are found – this is a core principle of GitOps safety. Options A incorrectly suggests a lack of conflict resolution; B accurately describes Argo CD's behavior; C misrepresents the pre-deployment check as purely compatibility; and D overstates the autonomous nature of Argo CD.
40 / 45
PR Description:
Subject: Update Service A Image Tag
Body:
Hi team,
Please review this PR to update the image tag for service A from 1.2.3 to 1.2.4. This is a minor version bump and should be straightforward. Argo CD should automatically deploy this change.
Thanks!
—John
This question tests understanding of how Argo CD reacts to changes in Git. The correct answer describes the standard workflow: the PR signals a change, Argo CD detects it and initiates an automated deployment based on the desired state defined in Git. Options A and B incorrectly suggest direct control or bypassing validation; option C is partially accurate but misses the core concept of desired state reconciliation, while option D misrepresents the automatic nature of Argo CD.
41 / 45
Sarah: "Hey team, I've just submitted a PR to update the service's image tag in our Git repository. It should be deployed automatically within a few minutes, right?"
Mark (Lead DevOps): "Not quite, Sarah. We're using Argo CD. It's constantly watching for changes in our desired state defined in Git. When it detects a difference – like your updated image tag – it initiates a deployment to bring the cluster into sync. But before deploying, it checks if the change is safe and doesn't introduce any conflicts or break existing configurations."
This scenario highlights Argo CD's proactive nature. Option 2 is incorrect because Argo CD *doesn't* blindly deploy changes; it performs validation first. Options A and D are also wrong as they misrepresent how Argo CD operates – it doesn't directly trigger `kubectl apply` or require manual intervention after a PR merge. Option 3 accurately describes Argo CD's core function: validating the proposed change before deploying to ensure stability and prevent issues.
42 / 45
During a Slack discussion about a recent PR update to deploy a new version of the `payment-service`, David asks: "So, Argo CD is just watching our Git repo and automatically deploying when it sees changes? What if there's a conflict with another deployment in progress?" Maria responds: "It's more sophisticated than that, David. Argo CD uses a 'drift detection' mechanism to identify discrepancies between the desired state in Git and the actual state of the cluster. It then automatically triggers a deployment to resolve those differences, but it also has built-in safeguards like dependency locking and version constraints to prevent conflicts."
The correct answer highlights Argo CD's proactive 'drift detection' and automated deployment capabilities. It's crucial to understand that GitOps isn't just about passively watching Git; it's about continuous reconciliation. Options A and D misrepresent the core functionality, while option B is overly restrictive—Argo CD doesn't halt *all* deployments. The key concept here is proactive monitoring and automated resolution of discrepancies, coupled with safeguards to mitigate risk.
43 / 45
Mark, the Lead DevOps engineer, is explaining Argo CD to a new team member, Alex. Mark says: 'Essentially, when you push a change to Git – let's say updating the version of our `auth-service` – Argo CD detects that and automatically applies it to the cluster. It's like having a constant feedback loop ensuring everything stays in sync. However, there's a safety net in place. Before deploying, Argo CD checks if the change is safe and doesn't introduce any conflicts or break existing configurations.' Alex asks: 'But what *exactly* does that 'safety net' do? Does it just stop me from breaking things, or is there more to it?'
This question tests understanding of Argo CD's core safety mechanisms. Option A is incorrect because a full rollback isn't typical; it's more granular. Option B is also wrong – Argo CD doesn't automatically roll back the entire cluster. Option C accurately describes the dependency locking and version constraints, which are key to preventing conflicts and ensuring safe deployments. Option D describes a manual approval process, not the automated safety net that Argo CD provides.
44 / 45
During a standup update, John says: "I've updated the Helm chart for our `user-service` to include a new feature flag. Argo CD should automatically deploy it.". Lisa, a junior developer, asks: 'But what if the new feature flag introduces a breaking change? Will Argo CD just blindly apply the changes?'
This question tests understanding of Argo CD's conflict resolution. The correct answer highlights that Argo CD continuously monitors the cluster state against the desired state in Git. When a change is detected, it performs a comparison to identify potential conflicts and, importantly, will roll back the deployment if incompatibilities are found – this is a core principle of GitOps safety. Options A incorrectly suggests a lack of conflict resolution; B accurately describes Argo CD's behavior; C misrepresents the pre-deployment check as purely compatibility; and D overstates the autonomous nature of Argo CD.
45 / 45
PR Description:
Subject: Update Service A Image Tag
Body:
Hi team,
Please review this PR to update the image tag for service A from 1.2.3 to 1.2.4. This is a minor version bump and should be straightforward. Argo CD should automatically deploy this change.
Thanks!
—John
This question tests understanding of how Argo CD reacts to changes in Git. The correct answer describes the standard workflow: the PR signals a change, Argo CD detects it and initiates an automated deployment based on the desired state defined in Git. Options A and B incorrectly suggest direct control or bypassing validation; option C is partially accurate but misses the core concept of desired state reconciliation, while option D misrepresents the automatic nature of Argo CD.
What will I practice in "GitOps Vocabulary — Cloud-Native Language Exercises"?
This is a Cloud-Native exercise set. It walks through 45 scenario-based multiple-choice questions built around real usage of Cloud-Native terminology that IT professionals encounter on the job.
Is this exercise free to use?
Yes. Every exercise on CoderSlingo, including this one, is free to complete with no account, sign-up, or paywall.
How many questions are in this exercise?
This set contains 45 questions. Each one shows immediate feedback and a detailed explanation after you answer, so you learn the correct usage right away rather than waiting for a final score.
Do I need prior experience to complete this exercise?
No prior experience is required. Each question includes a full explanation covering the reasoning behind the correct answer, so the exercise itself teaches the Cloud-Native vocabulary as you go.
Can I retry the exercise if I get questions wrong?
Yes — use the "Try again" button on the results screen to reset your answers and go through all the questions again. There is no limit on attempts.
Is my progress saved?
Your answers and score for the current session are tracked in the browser as you go. No account or login is needed, and there is nothing to install.
What if I don't understand a term used in a question?
Read the explanation shown after you answer each question — it breaks down the correct term in plain English with a real-world example. You can also check the site Glossary for quick definitions.
How is this different from reading a blog article on the topic?
Exercises like this one are interactive drills that test and reinforce specific vocabulary through multiple-choice questions, while blog articles explain concepts in prose. Practising here after reading builds active recall, not just passive recognition.
Where can I find more Cloud-Native exercises?
See the Cloud-Native exercises hub for the full set of related pages, or browse all exercise categories from the main Exercises index.
Can I use this exercise to prepare for a technical interview?
Yes — Cloud-Native vocabulary comes up often in technical discussions and interviews. Pair this exercise with our dedicated Interview Preparation section for role-specific practice.