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
|**ApplicationSet not generating apps**| Verify the directory structure matches the `path` pattern in the `ApplicationSet`. Check the `ApplicationSet` controller logs in the `argocd` namespace. |
228
+
|**ApplicationSet not generating apps**| Verify the directory structure matches the `path` pattern in the `ApplicationSet`. Check the `ApplicationSet` controller logs in the `argocd` namespace. Also ensure you are not accidentally excluding the path you want to deploy. |
229
+
|**Recursive loop or Helm error on `infra-argocd`**| This happens if the `infrastructure-appset` discovers the `infrastructure/controllers/argocd` directory. The ApplicationSet must have a generator that explicitly excludes this path to prevent ArgoCD from trying to manage itself. |
228
230
|**Applications stuck in sync**| Review application logs (`argocd app logs <app-name>`) and check for sync errors in the UI. |
229
231
|**ArgoCD UI not accessible**| Check the `http-route.yaml` and the status of the `istio-ingressgateway` service. |
230
232
231
233
### ArgoCD Self-Management
232
-
```bash
233
-
# Check the root application that manages the rest of ArgoCD's config
234
-
kubectl get application root -n argocd -o yaml
235
-
236
-
# View the ArgoCD ApplicationSets managed by the root app
237
-
kubectl get applicationsets -n argocd
238
-
```
239
-
240
-
## Enterprise Patterns
241
-
242
-
This setup follows **enterprise GitOps patterns**:
243
-
244
-
1.**Infrastructure as Code**: Everything defined in Git.
245
-
2.**Self-Service**: Developers can add new applications simply by creating a new directory in the correct path.
246
-
3.**Separation of Concerns**: Clear project boundaries for security and organization.
247
-
4.**Automated Operations**: Zero-touch deployments after the initial bootstrap.
248
-
5.**Observability**: Ready for a full monitoring and alerting stack.
249
-
6.**Security**: `AppProject`s provide the foundation for RBAC and policy.
250
-
251
-
## Taking to Production
252
-
253
-
This homelab setup translates directly to enterprise environments:
254
-
255
-
1.**Replace Git repo URL** in the `ApplicationSet`s and `root.yaml`.
256
-
2.**Add proper RBAC** to the `AppProject`s for team-based access.
257
-
3.**Configure notifications** for Slack/Teams in the ArgoCD `values.yaml`.
258
-
4.**Add policy enforcement** with tools like OPA Gatekeeper, using project selectors.
259
-
5.**Implement proper secrets management** with External Secrets Operator, which is already set up.
260
-
6.**Add multi-cluster support** by adding new cluster destinations to the `AppProject`s and modifying the `ApplicationSet`s.
261
-
262
-
The patterns and structure remain the same - this is **production-grade GitOps**.
0 commit comments