summaryrefslogtreecommitdiff
path: root/f3s/argocd/values.yaml
blob: 2d5a4c1f7a0d603931d305750fa234b00b0aa80e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
# ArgoCD Helm Chart Values Override
# Following f3s cluster patterns: non-HA, single instance deployment

global:
  domain: argocd.f3s.buetow.org

# Disable HA mode - following cluster pattern
redis-ha:
  enabled: false

# Use standard Redis with authentication
redis:
  enabled: true

# Controller configuration (manages k8s resources)
controller:
  replicas: 1
  # Enable metrics for Prometheus integration
  metrics:
    enabled: true
    serviceMonitor:
      enabled: true
      namespace: cicd
      additionalLabels:
        release: prometheus

# Server configuration (API/Web UI)
server:
  replicas: 1
  # Run in insecure mode - TLS termination at ingress
  insecure: true
  # Disable built-in ingress - using separate manifest
  ingress:
    enabled: false
  # Resource limits
  resources:
    limits:
      cpu: 500m
      memory: 512Mi
    requests:
      cpu: 250m
      memory: 256Mi
  # Enable metrics for Prometheus integration
  metrics:
    enabled: true
    serviceMonitor:
      enabled: true
      namespace: cicd
      additionalLabels:
        release: prometheus

# Repo Server configuration (clones repos, generates manifests)
repoServer:
  replicas: 1
  # Pod security context - fsGroup ensures secret volumes are readable by argocd user (999)
  podSecurityContext:
    fsGroup: 999
  # Enable persistence for repo cache - mount PVC at /home/argocd/repo-cache
  # This avoids conflict with default /tmp mount used by ArgoCD
  volumes:
    - name: repo-server-data
      persistentVolumeClaim:
        claimName: argocd-repo-server-pvc
    # SSH private key for git-server access
    - name: argocd-git-ssh-key
      secret:
        secretName: argocd-git-ssh-key
        defaultMode: 0444
  volumeMounts:
    - name: repo-server-data
      mountPath: /home/argocd/repo-cache
    # Mount SSH key for git operations
    - name: argocd-git-ssh-key
      mountPath: /home/argocd/.ssh/id_ed25519
      subPath: sshPrivateKey
      readOnly: true
  # Configure repo-server to use the persistent cache directory and SSH key
  env:
    - name: XDG_CACHE_HOME
      value: /home/argocd/repo-cache
    # Configure git to use SSH key and accept new host keys
    - name: GIT_SSH_COMMAND
      value: "ssh -i /home/argocd/.ssh/id_ed25519 -o StrictHostKeyChecking=accept-new"
  # Resource limits
  resources:
    limits:
      cpu: 500m
      memory: 512Mi
    requests:
      cpu: 250m
      memory: 256Mi
  # Enable metrics for Prometheus integration
  metrics:
    enabled: true
    serviceMonitor:
      enabled: true
      namespace: cicd
      additionalLabels:
        release: prometheus

# ApplicationSet controller (multi-app management)
applicationSet:
  replicas: 1

# Notifications controller - disabled
notifications:
  enabled: false

# Dex (SSO/OAuth) - disabled for simplicity
dex:
  enabled: false

# CRD installation
crds:
  install: true
  keep: true

# Server configuration parameters - run in insecure mode
configs:
  params:
    server.insecure: true
  # Note: argocdServerAdminPassword is NOT set (left empty)
  # This means:
  # - helm install: Generates random password in argocd-initial-admin-secret
  # - helm upgrade: Does NOT reset the password (preserves user changes)
  # - helm uninstall: Deletes secret along with all resources