# Wave 5 — Kafka (Strimzi operator + cluster CR), Redis, and the SQS-like # queue services. Strimzi/Redis are public Helm charts; kafka-cluster/queue-crd/ # management-service are local charts (rendered from their own Chart.yaml). apiVersion: argoproj.io/v1alpha1 kind: Application metadata: name: strimzi-operator namespace: argocd annotations: argocd.argoproj.io/sync-wave: "5" spec: project: homelab source: repoURL: https://strimzi.io/charts/ chart: strimzi-kafka-operator targetRevision: 0.46.0 helm: releaseName: strimzi-operator destination: server: https://kubernetes.default.svc namespace: sqs syncPolicy: automated: prune: true selfHeal: true syncOptions: - CreateNamespace=true --- apiVersion: argoproj.io/v1alpha1 kind: Application metadata: name: kmsvc-redis namespace: argocd annotations: argocd.argoproj.io/sync-wave: "5" spec: project: homelab source: repoURL: https://charts.bitnami.com/bitnami chart: redis targetRevision: 20.6.0 helm: # docker.io/bitnami stopped publishing version-pinned tags; bitnamilegacy # mirrors them. allowInsecureImages silences the chart image-allowlist check. values: | global: security: allowInsecureImages: true image: repository: bitnamilegacy/redis auth: enabled: false destination: server: https://kubernetes.default.svc namespace: sqs syncPolicy: automated: prune: true selfHeal: true --- apiVersion: argoproj.io/v1alpha1 kind: Application metadata: name: kafka-cluster namespace: argocd annotations: argocd.argoproj.io/sync-wave: "6" spec: project: homelab source: repoURL: https://forgejo.riotpiao.com/rock/homelab.git targetRevision: main path: k8s/apps/messaging/kafka-cluster destination: server: https://kubernetes.default.svc namespace: sqs syncPolicy: automated: prune: true selfHeal: true --- apiVersion: argoproj.io/v1alpha1 kind: Application metadata: name: queue-crd namespace: argocd annotations: argocd.argoproj.io/sync-wave: "6" # ArgoCD Image Updater - auto-update on new image push argocd-image-updater.argoproj.io/image-list: op=forgejo.riotpiao.com/rock/kmsvc-manage argocd-image-updater.argoproj.io/op.update-strategy: newest-build argocd-image-updater.argoproj.io/op.allow-tags: regexp:^[0-9a-f]{7}$ argocd-image-updater.argoproj.io/write-back-method: argocd spec: project: homelab source: repoURL: https://forgejo.riotpiao.com/rock/homelab.git targetRevision: main path: k8s/apps/messaging/queue-crd destination: server: https://kubernetes.default.svc namespace: sqs syncPolicy: automated: prune: true selfHeal: true --- apiVersion: argoproj.io/v1alpha1 kind: Application metadata: name: management-service namespace: argocd annotations: argocd.argoproj.io/sync-wave: "7" # ArgoCD Image Updater - auto-update on new image push argocd-image-updater.argoproj.io/image-list: svc=forgejo.riotpiao.com/rock/kmsvc-manage argocd-image-updater.argoproj.io/svc.update-strategy: newest-build argocd-image-updater.argoproj.io/svc.allow-tags: regexp:^[0-9a-f]{7}$ argocd-image-updater.argoproj.io/write-back-method: argocd spec: project: homelab source: repoURL: https://forgejo.riotpiao.com/rock/homelab.git targetRevision: main path: k8s/apps/messaging/management-service destination: server: https://kubernetes.default.svc namespace: sqs syncPolicy: automated: prune: true selfHeal: true