Skip to content

Commit edc806e

Browse files
Merge branch 'main' of github.com:codefresh-io/gitops-runtime-helm into CR-test-queue
# Conflicts: # charts/gitops-runtime/values.yaml
2 parents 185a617 + 443c37c commit edc806e

File tree

10 files changed

+376
-103
lines changed

10 files changed

+376
-103
lines changed

.github/workflows/component-test.yaml

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,13 @@ on:
55
push:
66
branches:
77
- main
8-
paths-ignore:
9-
- "*.md"
10-
- charts/**
8+
- 'stable/*'
9+
- 'monthly/*'
1110
pull_request:
1211
branches:
1312
- main
14-
paths-ignore:
15-
- "*.md"
16-
- charts/**
13+
- 'stable/*'
14+
- 'monthly/*'
1715

1816
jobs:
1917
component-test:
@@ -68,7 +66,7 @@ jobs:
6866
helm repo add gitea-charts https://dl.gitea.com/charts/
6967
helm repo add mockserver https://www.mock-server.com
7068
71-
69+
7270
- name: Run KUTTL tests
7371
run: |
74-
cd tests/component-tests && ./../../bin/kuttl test --parallel 1 --start-kind=false --namespace e2e-test --config startup.yaml
72+
cd tests/component-tests && ./../../bin/kuttl test --parallel 1 --start-kind=false --namespace e2e-test --config startup.yaml

charts/gitops-runtime/Chart.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ dependencies:
1717
- name: argo-cd
1818
repository: https://codefresh-io.github.io/argo-helm
1919
condition: argo-cd.enabled
20-
version: 8.0.6-6-cap-v3.0.2-2025-07-06-e9fc72a9
20+
version: 8.0.6-8-cap-v3.0.2-2025-09-07-cdf75df5
2121
- name: argo-events
2222
repository: https://codefresh-io.github.io/argo-helm
2323
version: 2.4.8-cap-CR-29689
@@ -34,7 +34,7 @@ dependencies:
3434
version: 2.17.2
3535
- name: codefresh-tunnel-client
3636
repository: oci://quay.io/codefresh/charts
37-
version: 0.1.21
37+
version: 0.1.22
3838
alias: tunnel-client
3939
condition: tunnel-client.enabled
4040
- name: cf-common

charts/gitops-runtime/README.md

Lines changed: 178 additions & 9 deletions
Large diffs are not rendered by default.

charts/gitops-runtime/README.md.gotmpl

Lines changed: 148 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -193,6 +193,154 @@ sealed-secrets:
193193
enabled: false
194194
```
195195

196+
## High Availability
197+
198+
This chart installs the non-HA version of GitOps Runtime by default. If you want to run GitOps Runtime in HA mode, you can use the example values below:
199+
200+
> **Warning:**
201+
> You need at least 3 worker nodes for HA mode
202+
203+
### HA mode with autoscaling
204+
205+
```yaml
206+
global:
207+
topologySpreadConstraints:
208+
- maxSkew: 1
209+
topologyKey: kubernetes.io/hostname
210+
whenUnsatisfiable: DoNotSchedule
211+
212+
app-proxy:
213+
replicaCount: 2
214+
pdb:
215+
enabled: true
216+
minAvailable: 1
217+
topologySpreadConstraints:
218+
- maxSkew: 1
219+
topologyKey: kubernetes.io/hostname
220+
whenUnsatisfiable: DoNotSchedule
221+
labelSelector:
222+
matchLabels:
223+
app: cap-app-proxy
224+
225+
gitops-operator:
226+
replicaCount: 2
227+
pdb:
228+
enabled: true
229+
minAvailable: 1
230+
topologySpreadConstraints:
231+
- maxSkew: 1
232+
topologyKey: kubernetes.io/hostname
233+
whenUnsatisfiable: DoNotSchedule
234+
labelSelector:
235+
matchLabels:
236+
app: gitops-operator
237+
238+
internal-router:
239+
replicaCount: 2
240+
pdb:
241+
enabled: true
242+
minAvailable: 1
243+
topologySpreadConstraints:
244+
- maxSkew: 1
245+
topologyKey: kubernetes.io/hostname
246+
whenUnsatisfiable: DoNotSchedule
247+
labelSelector:
248+
matchLabels:
249+
app: internal-router
250+
251+
cf-argocd-extras:
252+
sourcesServer:
253+
hpa:
254+
enabled: true
255+
minReplicas: 2
256+
pdb:
257+
enabled: true
258+
minAvailable: 1
259+
topologySpreadConstraints:
260+
- maxSkew: 1
261+
topologyKey: kubernetes.io/hostname
262+
whenUnsatisfiable: DoNotSchedule
263+
labelSelector:
264+
matchLabels:
265+
app.kubernetes.io/component: sources-server
266+
eventReporter:
267+
topologySpreadConstraints:
268+
- maxSkew: 1
269+
topologyKey: kubernetes.io/hostname
270+
whenUnsatisfiable: DoNotSchedule
271+
labelSelector:
272+
matchLabels:
273+
app.kubernetes.io/component: event-reporter
274+
275+
argo-cd:
276+
redis-ha:
277+
enabled: true
278+
279+
controller:
280+
replicas: 1
281+
282+
server:
283+
autoscaling:
284+
enabled: true
285+
minReplicas: 2
286+
pdb:
287+
enabled: true
288+
minAvailable: 1
289+
290+
repoServer:
291+
autoscaling:
292+
enabled: true
293+
minReplicas: 2
294+
pdb:
295+
enabled: true
296+
minAvailable: 1
297+
298+
applicationSet:
299+
replicas: 2
300+
301+
argo-workflows:
302+
controller:
303+
replicas: 2
304+
pdb:
305+
enabled: true
306+
minAvailable: 1
307+
server:
308+
autoscaling:
309+
enabled: true
310+
minReplicas: 2
311+
pdb:
312+
enabled: true
313+
minAvailable: 1
314+
315+
event-reporters:
316+
workflow:
317+
sensor:
318+
replicas: 2
319+
affinity:
320+
podAntiAffinity:
321+
requiredDuringSchedulingIgnoredDuringExecution:
322+
- labelSelector:
323+
matchExpressions:
324+
- key: sensor-name
325+
operator: In
326+
values:
327+
- workflow-reporter
328+
topologyKey: "kubernetes.io/hostname"
329+
rollout:
330+
sensor:
331+
replicas: 2
332+
affinity:
333+
podAntiAffinity:
334+
requiredDuringSchedulingIgnoredDuringExecution:
335+
- labelSelector:
336+
matchExpressions:
337+
- key: sensor-name
338+
operator: In
339+
values:
340+
- rollout-reporter
341+
topologyKey: "kubernetes.io/hostname"
342+
```
343+
196344
## Upgrading
197345

198346
### To 0.23.x

charts/gitops-runtime/templates/_components/cf-argocd-extras/_default-values.tpl

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ eventReporter:
3333
controller:
3434
enabled: true
3535
type: statefulset
36-
replicas: 3
36+
replicas: 1
3737
revisionHistoryLimit: 5
3838

3939
container:
@@ -62,6 +62,11 @@ eventReporter:
6262
HTTP_PROXY: '{{ .Values.global.httpProxy }}'
6363
HTTPS_PROXY: '{{ .Values.global.httpsProxy }}'
6464
NO_PROXY: '{{ .Values.global.noProxy }}'
65+
APP_QUEUE_SIZE:
66+
valueFrom:
67+
configMapKeyRef:
68+
name: event-reporter-cmd-params-cm
69+
key: app.queue.size
6570
ARGOCD_APPLICATION_NAMESPACES:
6671
valueFrom:
6772
configMapKeyRef:
@@ -99,7 +104,7 @@ eventReporter:
99104
configMapKeyRef:
100105
key: base-url
101106
name: codefresh-cm
102-
EVENT_REPORTER_REPLICAS: 3
107+
EVENT_REPORTER_REPLICAS: 1
103108
INSECURE:
104109
valueFrom:
105110
configMapKeyRef:
@@ -124,36 +129,22 @@ eventReporter:
124129
name: event-reporter-cmd-params-cm
125130
key: log.level
126131
optional: true
127-
METRICS_LISTEN_ADDRESS:
128-
valueFrom:
129-
configMapKeyRef:
130-
name: event-reporter-cmd-params-cm
131-
key: metrics.listen.address
132-
optional: true
133-
RATE_LIMITER_BUCKET_SIZE:
134-
valueFrom:
135-
configMapKeyRef:
136-
name: event-reporter-cmd-params-cm
137-
key: rate.limiter.bucket.size
138-
optional: true
139-
RATE_LIMITER_DURATION:
132+
MAX_APP_RETRIES:
140133
valueFrom:
141134
configMapKeyRef:
142135
name: event-reporter-cmd-params-cm
143-
key: rate.limiter.duration
144-
optional: true
145-
RATE_LIMITER_ENABLED:
136+
key: max.app.retries
137+
METRICS_LISTEN_ADDRESS:
146138
valueFrom:
147139
configMapKeyRef:
148140
name: event-reporter-cmd-params-cm
149-
key: rate.limiter.enabled
141+
key: metrics.listen.address
150142
optional: true
151-
RATE_LIMITER_LEARNING_MODE_ENABLED:
143+
OTEL_EXPORTER_OTLP_TRACES_ENDPOINT:
152144
valueFrom:
153145
configMapKeyRef:
154146
name: event-reporter-cmd-params-cm
155-
key: rate.limiter.learning.mode.enabled
156-
optional: true
147+
key: otlp.address
157148
REDISDB:
158149
valueFrom:
159150
configMapKeyRef:
@@ -221,6 +212,11 @@ eventReporter:
221212
configMapKeyRef:
222213
name: event-reporter-cmd-params-cm
223214
key: sources.server
215+
THREADINESS:
216+
valueFrom:
217+
configMapKeyRef:
218+
name: event-reporter-cmd-params-cm
219+
key: threadiness
224220

225221
volumeMounts:
226222
codefresh-tls-certs:
@@ -258,9 +254,13 @@ eventReporter:
258254
cmd-params-cm:
259255
enabled: true
260256
data:
257+
app.queue.size: '1000'
261258
argocd.server: argo-cd-server:80
259+
max.app.retries: '5'
260+
otlp.address: ''
262261
repo.server: argo-cd-repo-server:8081
263262
sources.server: http://sources-server
263+
threadiness: '100'
264264

265265
volumes:
266266
codefresh-tls-certs:

charts/gitops-runtime/tests/cf-argocd-extras_test.yaml

Lines changed: 0 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -310,51 +310,6 @@ tests:
310310
mountPath: /app/config/codefresh-tls-certs
311311
readOnly: true
312312

313-
- it: Event Reporter checksum annotation should be changed when configmap is updated
314-
template: cf-argocd-extras/event-reporter/statefulset.yaml
315-
values:
316-
- ./values/mandatory-values-ingress.yaml
317-
set:
318-
cf-argocd-extras.eventReporter.configMaps.cmd-params-cm.data.foo: bar
319-
asserts:
320-
- equal:
321-
path: spec.template.metadata.annotations["checksum/config"]
322-
value: "747ba21145c84900dd029f20a15e73096e090da7865b67b86601135d10d8cc18"
323-
324-
325-
- it: Event Reporter checksum annotation should be changed when configmap is updated
326-
template: cf-argocd-extras/event-reporter/statefulset.yaml
327-
values:
328-
- ./values/mandatory-values-ingress.yaml
329-
set:
330-
cf-argocd-extras.eventReporter.configMaps.cmd-params-cm.data.alice: bob
331-
asserts:
332-
- equal:
333-
path: spec.template.metadata.annotations["checksum/config"]
334-
value: "42a0e8eee09a1a411447be59e5b5a078d699560b4d93b62d388a1b622a463b18"
335-
336-
- it: Sources Server checksum annotation should be changed when configmap is updated
337-
template: cf-argocd-extras/sources-server/deployment.yaml
338-
values:
339-
- ./values/mandatory-values-ingress.yaml
340-
set:
341-
cf-argocd-extras.sourcesServer.configMaps.cmd-params-cm.data.foo: bar
342-
asserts:
343-
- equal:
344-
path: spec.template.metadata.annotations["checksum/config"]
345-
value: "1aac0bdcb473209b67afca0d5ff7cb1d9b849748f82c76e53fd9a43c51456dc2"
346-
347-
- it: Sources Server checksum annotation should be changed when configmap is updated
348-
template: cf-argocd-extras/sources-server/deployment.yaml
349-
values:
350-
- ./values/mandatory-values-ingress.yaml
351-
set:
352-
cf-argocd-extras.sourcesServer.configMaps.cmd-params-cm.data.alice: bob
353-
asserts:
354-
- equal:
355-
path: spec.template.metadata.annotations["checksum/config"]
356-
value: "cf799238e8fa77132860698833bfe00a6dce93ec57d994da59aa8be3909e61b5"
357-
358313
- it: Sources Server with external redis
359314
template: cf-argocd-extras/sources-server/deployment.yaml
360315
values:

charts/gitops-runtime/values-ha.yaml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,7 @@ global:
55
whenUnsatisfiable: DoNotSchedule
66

77
app-proxy:
8-
# -- Set to 1 until https://codefresh-io.atlassian.net/browse/CR-29338 is resolved
9-
replicaCount: 1
8+
replicaCount: 2
109
pdb:
1110
enabled: true
1211
minAvailable: 1

0 commit comments

Comments
 (0)