blob: c78c5d2baa55a7744c0021db55533ccff4ebacca [file] [log] [blame]
Giorgi Lekveishvili5c2c0b92023-12-07 17:35:40 +04001images:
2 busybox:
3 registry: docker.io
4 tag: latest
5 # Registry used for container images created by this project
6 registry:
7 # The registry name must NOT contain a trailing slash
8 name:
9 ImagePullSecret:
10 # Leave blank, if no ImagePullSecret is needed.
11 name: image-pull-secret
12 # If set to false, the gerrit chart expects either a ImagePullSecret
13 # with the name configured above to be present on the cluster or that no
14 # credentials are needed.
15 create: false
16 username:
17 password:
18 version: latest
19 imagePullPolicy: Always
20 # Additional ImagePullSecrets that already exist and should be used by the
21 # pods of this chart. E.g. to pull busybox from dockerhub.
22 additionalImagePullSecrets: []
23
24# Additional labels that should be applied to all resources
25additionalLabels: {}
26
27storageClasses:
28 # Storage class used for storing logs and other pod-specific persisted data
29 default:
30 # If create is set to false, an existing StorageClass with the given
31 # name is expected to exist in the cluster. Setting create to true will
32 # create a storage class with the parameters given below.
33 name: longhorn
34 create: false
35 provisioner: kubernetes.io/aws-ebs
36 reclaimPolicy: Delete
37 # Use the parameters key to set all parameters needed for the provisioner
38 parameters:
39 type: gp2
40 fsType: ext4
41 mountOptions: []
42 allowVolumeExpansion: false
43 # Storage class used for storing git repositories. Has to provide RWM access.
44 shared:
45 # If create is set to false, an existing StorageClass with RWM access
46 # mode and the given name has to be provided.
47 name: longhorn
48 create: false
49 provisioner: nfs
50 reclaimPolicy: Delete
51 # Use the parameters key to set all parameters needed for the provisioner
52 parameters:
53 mountOptions: vers=4.1
54 mountOptions: []
55 allowVolumeExpansion: false
56
57
58nfsWorkaround:
59 enabled: false
60 chownOnStartup: false
61 idDomain: localdomain.com
62
63
64networkPolicies:
65 enabled: false
66 dnsPorts:
67 - 53
68 - 8053
69
70
71gitRepositoryStorage:
72 externalPVC:
73 use: false
74 name: git-repositories-pvc
75 size: 5Gi
76
77logStorage:
78 enabled: false
79 externalPVC:
80 use: false
81 name: gerrit-logs-pvc
82 size: 5Gi
83 cleanup:
84 enabled: false
85 additionalPodLabels: {}
86 schedule: "0 0 * * *"
87 retentionDays: 14
88 resources:
89 requests:
90 cpu: 100m
91 memory: 256Mi
92 limits:
93 cpu: 100m
94 memory: 256Mi
95
96caCert:
97
98ingress:
99 enabled: false
100 host:
101 # The maximum body size to allow for requests. Use "0" to allow unlimited
102 # reuqest body sizes.
103 maxBodySize: 50m
104 additionalAnnotations:
105 kubernetes.io/ingress.class: nginx
106 # nginx.ingress.kubernetes.io/server-alias: example.com
107 # nginx.ingress.kubernetes.io/whitelist-source-range: xxx.xxx.xxx.xxx
108 tls:
109 enabled: false
110 secret:
111 create: true
112 # `name` will only be used, if `create` is set to false to bind an
113 # existing secret. Otherwise the name will be automatically generated to
114 # avoid conflicts between multiple chart installations.
115 name:
116 # `cert`and `key` will only be used, if the secret will be created by
117 # this chart.
118 cert: |-
119 -----BEGIN CERTIFICATE-----
120
121 -----END CERTIFICATE-----
122 key: |-
123 -----BEGIN RSA PRIVATE KEY-----
124
125 -----END RSA PRIVATE KEY-----
126
127
128gitGC:
129 image: k8sgerrit/git-gc
130
131 tolerations: []
132 nodeSelector: {}
133 affinity: {}
134 additionalPodLabels: {}
135
136 schedule: 0 6,18 * * *
137
138 resources:
139 requests:
140 cpu: 100m
141 memory: 256Mi
142 limits:
143 cpu: 100m
144 memory: 256Mi
145
146 logging:
147 persistence:
148 enabled: true
149 size: 1Gi
150
151
152gerrit:
153 images:
154 gerritInit: k8sgerrit/gerrit-init
155 gerrit: k8sgerrit/gerrit
156
157 tolerations: []
158 topologySpreadConstraints: {}
159 nodeSelector: {}
160 affinity: {}
161 additionalAnnotations: {}
162 additionalPodLabels: {}
163
164 replicas: 1
165 updatePartition: 0
166
167 # The memory limit has to be higher than the configures heap-size for Java!
168 resources:
169 requests:
170 cpu: 1
171 memory: 5Gi
172 limits:
173 cpu: 1
174 memory: 6Gi
175
176 persistence:
177 enabled: true
178 size: 10Gi
179
180 livenessProbe:
181 initialDelaySeconds: 30
182 periodSeconds: 5
183
184 readinessProbe:
185 initialDelaySeconds: 5
186 periodSeconds: 1
187
188 startupProbe:
189 initialDelaySeconds: 10
190 periodSeconds: 30
191
192 gracefulStopTimeout: 90
193
194 # The general NetworkPolicy rules implemented by this chart may be too restrictive
195 # for some setups, e.g. when trying to replicate to a Gerrit replica. Here
196 # custom rules may be added to whitelist some additional connections.
197 networkPolicy:
198 ingress: []
199 egress: []
200 # An example for an egress rule to allow replication to a Gerrit replica
201 # installed with the gerrit-replica setup in the same cluster and namespace
202 # by using the service as the replication destination
203 # (e.g. http://gerrit-replica-git-backend-service:80/git/${name}.git):
204 #
205 # - to:
206 # - podSelector:
207 # matchLabels:
208 # app: git-backend
209
210 service:
211 additionalAnnotations: {}
212 loadBalancerSourceRanges: []
213 type: LoadBalancer
214 externalTrafficPolicy: Cluster
215 http:
216 port: 80
217 ssh:
218 enabled: true
219 port: 29418
220
221 # `gerrit.keystore` expects a base64-encoded Java-keystore
222 # Since Java keystores are binary files, adding the unencoded content and
223 # automatic encoding using helm does not work here.
224 keystore:
225
226 index:
227 # Either `lucene` or `elasticsearch`
228 type: lucene
229
230 pluginManagement:
231 plugins:
232 - name: gitiles
233 # A plugin packaged in the gerrit.war-file
234 # - name: download-commands
235
236 # A plugin packaged in the gerrit.war-file that will also be installed as a
237 # lib
238 # - name: replication
239 # installAsLibrary: true
240
241 # A plugin that will be downloaded on startup
242 # - name: delete-project
243 # url: https://example.com/gerrit-plugins/delete-project.jar
244 # sha1:
245 # installAsLibrary: false
246
247 # Only downloaded plugins will be cached. This will be ignored, if no plugins
248 # are downloaded.
249 libs: []
250 cache:
251 enabled: false
252 size: 1Gi
253
254 priorityClassName:
255
256 etc:
257 # Some values are expected to have a specific value for the deployment installed
258 # by this chart to work. These are marked with `# FIXED`.
259 # Do not change them!
260 config:
261 gerrit.config: |-
262 [gerrit]
263 basePath = git # FIXED
264 serverId = gerrit-1
265 # The canonical web URL has to be set to the Ingress host, if an Ingress
266 # is used. If a LoadBalancer-service is used, this should be set to the
267 # LoadBalancer's external IP. This can only be done manually after installing
268 # the chart, when you know the external IP the LoadBalancer got from the
269 # cluster.
270 canonicalWebUrl = http://192.168.100.215/
271 disableReverseDnsLookup = true
272 [index]
273 type = LUCENE
274 [auth]
275 type = DEVELOPMENT_BECOME_ANY_ACCOUNT
276 gitBasicAuthPolicy = HTTP
277 [httpd]
278 # If using an ingress use proxy-http or proxy-https
279 listenUrl = proxy-http://*:8080/
280 requestLog = true
281 gracefulStopTimeout = 1m
282 [sshd]
283 listenAddress = off
284 [transfer]
285 timeout = 120 s
286 [user]
287 name = Gerrit Code Review
288 email = gerrit@example.com
289 anonymousCoward = Unnamed User
290 [cache]
291 directory = cache
292 [container]
293 user = gerrit # FIXED
294 javaHome = /usr/lib/jvm/java-11-openjdk # FIXED
295 javaOptions = -Djavax.net.ssl.trustStore=/var/gerrit/etc/keystore # FIXED
296 javaOptions = -Xms200m
297 # Has to be lower than 'gerrit.resources.limits.memory'. Also
298 # consider memories used by other applications in the container.
299 javaOptions = -Xmx4g
300
301 replication.config: |-
302 [gerrit]
303 autoReload = false
304 replicateOnStartup = true
305 defaultForceUpdate = true
306
307 # [remote "replica"]
308 # url = http://gerrit-replica.example.com/git/${name}.git
309 # replicationDelay = 0
310 # timeout = 30
311
312 secret:
313 secure.config: |-
314 # Password for the keystore added as value for 'gerritReplica.keystore'
315 # Only needed, if SSL is enabled.
316 #[httpd]
317 # sslKeyPassword = gerrit
318
319 # Credentials for replication targets
320 # [remote "replica"]
321 # username = git
322 # password = secret
323
324 # ssh_host_ecdsa_key: |-
325 # -----BEGIN EC PRIVATE KEY-----
326
327 # -----END EC PRIVATE KEY-----
328
329 # ssh_host_ecdsa_key.pub: ecdsa-sha2-nistp256...
330
331 additionalConfigMaps:
332 # - name:
333 # subDir:
334 # data:
335 # file.txt: test