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
|