REFACTOR(argocd): merge image-updater into argocd

- Move image-updater Application to argocd folder
- Move helm-values and secrets to argocd
- Remove separate argocd-image-updater folder
- Update kustomization references
This commit is contained in:
2026-01-10 19:44:02 +09:00
parent 121d5eb198
commit 81c42f67e9
6 changed files with 5 additions and 11 deletions

View File

@@ -0,0 +1,19 @@
# ArgoCD Image Updater Helm Values
# Configuration for Zot private registry
config:
logLevel: debug
registries:
- name: zot
prefix: zot0213.kro.kr
api_url: https://zot0213.kro.kr
credentials: pullsecret:argocd/zot-registry-credentials
insecure: false
# Resource limits
resources:
requests:
cpu: 15m
memory: 100Mi
limits:
memory: 100Mi

32
argocd/image-updater.yaml Normal file
View File

@@ -0,0 +1,32 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: argocd-image-updater
namespace: argocd
spec:
project: default
sources:
- repoURL: https://argoproj.github.io/argo-helm
chart: argocd-image-updater
targetRevision: 0.11.0
helm:
valueFiles:
- $values/argocd/image-updater-values.yaml
- repoURL: https://github.com/K3S-HOME/platform.git
targetRevision: main
ref: values
destination:
server: https://kubernetes.default.svc
namespace: argocd
syncPolicy:
automated:
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true
retry:
limit: 5
backoff:
duration: 5s
factor: 2
maxDuration: 3m

View File

@@ -3,6 +3,9 @@ kind: Kustomization
resources:
# ArgoCD Application (self-managed via Helm chart)
- argocd.yaml
# ArgoCD Image Updater Application
- image-updater.yaml
# Additional manifests (applied alongside Helm chart)
- manifests/namespace.yaml
- manifests/webhook-ingress.yaml
- manifests/image-updater-secret.yaml

View File

@@ -0,0 +1,50 @@
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: zot-registry-credentials
namespace: argocd
spec:
refreshInterval: 1h
secretStoreRef:
kind: ClusterSecretStore
name: vault-backend
target:
name: zot-registry-credentials
creationPolicy: Owner
template:
type: kubernetes.io/dockerconfigjson
data:
.dockerconfigjson: |
{"auths":{"zot0213.kro.kr":{"username":"{{ .USERNAME }}","password":"{{ .PASSWORD }}","auth":"{{ printf "%s:%s" .USERNAME .PASSWORD | b64enc }}"}}}
data:
- secretKey: USERNAME
remoteRef:
key: zot
property: USERNAME
- secretKey: PASSWORD
remoteRef:
key: zot
property: PASSWORD
---
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: github-creds
namespace: argocd
spec:
refreshInterval: 1h
secretStoreRef:
kind: ClusterSecretStore
name: vault-backend
target:
name: github-creds
creationPolicy: Owner
data:
- secretKey: username
remoteRef:
key: github
property: username
- secretKey: password
remoteRef:
key: github
property: password