- Track poimen-memory, poimen-workflows, poimen-frontend images
- Auto-update on new 7-char SHA tags from Forgejo
- Filter: regexp:^[0-9a-f]{7}$ (commit SHA)
- write-back-method: argocd (updates Application)
52 lines
1.9 KiB
YAML
52 lines
1.9 KiB
YAML
# Poimen project collection — manages poimen-memory, poimen-workflows, and poiman
|
|
# Each repo tracks its own main branch (no prod branch). Poiman is the primary
|
|
# orchestrator with k8s/argocd/ containing the AppProject and deployment structure.
|
|
#
|
|
# CI: All three repos trigger on main branch pushes (no image builds yet).
|
|
# Future: Add build workflows for poiman once container runtime needs are clear.
|
|
apiVersion: argoproj.io/v1alpha1
|
|
kind: Application
|
|
metadata:
|
|
name: poimen-root
|
|
namespace: argocd
|
|
labels:
|
|
app.kubernetes.io/name: poimen
|
|
app.kubernetes.io/component: orchestrator
|
|
annotations:
|
|
argocd.argoproj.io/sync-wave: "7"
|
|
# Image Updater: auto-update on new image push (SHA tag filter)
|
|
argocd-image-updater.argoproj.io/image-list: |
|
|
memory=forgejo.riotpiao.com/rock/poimen-memory
|
|
workflows=forgejo.riotpiao.com/rock/poimen-workflows
|
|
frontend=forgejo.riotpiao.com/rock/poimen-frontend
|
|
argocd-image-updater.argoproj.io/memory.update-strategy: newest-build
|
|
argocd-image-updater.argoproj.io/memory.allow-tags: regexp:^[0-9a-f]{7}$
|
|
argocd-image-updater.argoproj.io/workflows.update-strategy: newest-build
|
|
argocd-image-updater.argoproj.io/workflows.allow-tags: regexp:^[0-9a-f]{7}$
|
|
argocd-image-updater.argoproj.io/frontend.update-strategy: newest-build
|
|
argocd-image-updater.argoproj.io/frontend.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/poimen.git
|
|
targetRevision: main
|
|
path: k8s/argocd
|
|
directory:
|
|
recurse: false
|
|
destination:
|
|
server: https://kubernetes.default.svc
|
|
namespace: poimen
|
|
syncPolicy:
|
|
automated:
|
|
prune: true
|
|
selfHeal: true
|
|
syncOptions:
|
|
- CreateNamespace=true
|
|
retry:
|
|
limit: 5
|
|
backoff:
|
|
duration: 5s
|
|
factor: 2
|
|
maxDuration: 3m
|