blob: 8f55c82b2ebefd88fb49c4657ebfdc92562f0cea [file] [log] [blame]
images:
registry:
# The registry name must NOT contain a trailing slash
name:
ImagePullSecret:
# Leave blank, if no ImagePullSecret is needed.
name: image-pull-secret
# If set to false, the gerrit-slave chart expects either a ImagePullSecret
# with the name configured above to be present on the cluster or that no
# credentials are needed.
create: false
username:
password:
version: latest
imagePullPolicy: Always
storageClasses:
# Storage class used for storing logs and other pod-specific persisted data
default:
# If create is set to false, an existing StorageClass with the given
# name is expected to exist in the cluster. Setting create to true will
# create a storage class with the parameters given below.
name: default
create: false
provisioner: kubernetes.io/aws-ebs
reclaimPolicy: Delete
# Use the parameters key to set all parameters needed for the provisioner
parameters:
type: gp2
fsType: ext4
# Storage class used for storing git repositories. Has to provide RWM access.
shared:
# If create is set to false, an existing StorageClass with RWM access
# mode and the given name has to be provided.
name: shared-storage
create: false
provisioner: nfs
reclaimPolicy: Delete
# Use the parameters key to set all parameters needed for the provisioner
parameters:
mountOptions: vers=4.1
gitRepositoryStorage:
size: 5Gi
gitBackend:
image: k8sgerrit/apache-git-http-backend
replicas: 1
maxSurge: 25%
# For just one replica, 100 % unavailability has to be allowed for updates to
# work.
maxUnavailable: 100%
resources:
requests:
cpu: 100m
memory: 256Mi
limits:
cpu: 100m
memory: 256Mi
logging:
persistence:
enabled: true
size: 1Gi
service:
type: LoadBalancer
# At least one endpoint (HTTP and/or HTTPS) has to be enabled in the service!
http:
enabled: true
port: 80
https:
enabled: false
port: 443
cert: |-
-----BEGIN CERTIFICATE-----
-----END CERTIFICATE-----
key: |-
-----BEGIN RSA PRIVATE KEY-----
-----END RSA PRIVATE KEY-----
ingress:
enabled: false
host:
# The maximum body size to allow for requests. Use "0" to allow unlimited
# reuqest body sizes.
maxBodySize: 50m
additionalAnnotations: {}
# nginx.ingress.kubernetes.io/server-alias: example.com
# nginx.ingress.kubernetes.io/whitelist-source-range: xxx.xxx.xxx.xxx
tls:
enabled: false
cert: |-
-----BEGIN CERTIFICATE-----
-----END CERTIFICATE-----
key: |-
-----BEGIN RSA PRIVATE KEY-----
-----END RSA PRIVATE KEY-----
credentials:
# example: user: 'git'; password: 'secret'
# run `man htpasswd` to learn about how to create .htpasswd-files
htpasswd: git:$apr1$O/LbLKC7$Q60GWE7OcqSEMSfe/K8xU.
# TODO: Create htpasswd-file on container startup instead and set user
# and password in values.yaml.
#user:
#password:
gitGC:
image: k8sgerrit/git-gc
schedule: 0 6,18 * * *
resources:
requests:
cpu: 100m
memory: 256Mi
limits:
cpu: 100m
memory: 256Mi
logging:
persistence:
enabled: true
size: 1Gi
gerritSlave:
images:
gerritInit: k8sgerrit/gerrit-init
gerritSlave: k8sgerrit/gerrit-slave
replicas: 1
maxSurge: 25%
# For just one replica, 100 % unavailability has to be allowed for updates to
# work.
maxUnavailable: 100%
# If you only intend to test the Gerrit slave and do not wish to actually
# replicate repositories, activate this option to initialize a new site,
# including a notedb.
initializeTestSite:
enabled: true
# The memory limit has to be higher than the configures heap-size for Java!
resources:
requests:
cpu: 1
memory: 5Gi
limits:
cpu: 1
memory: 6Gi
persistence:
enabled: true
size: 10Gi
service:
type: NodePort
http:
port: 80
ingress:
host:
additionalAnnotations: {}
# nginx.ingress.kubernetes.io/server-alias: example.com
# nginx.ingress.kubernetes.io/whitelist-source-range: xxx.xxx.xxx.xxx
tls:
enabled: false
cert: |-
-----BEGIN CERTIFICATE-----
-----END CERTIFICATE-----
key: |-
-----BEGIN RSA PRIVATE KEY-----
-----END RSA PRIVATE KEY-----
# `gerritSlave.keystore` expects a base64-encoded Java-keystore
# Since Java keystores are binary files, adding the unencoded content and
# automatic encoding using helm does not work here.
keystore:
config:
# Some values are expected to have a specific value for the deployment installed
# by this chart to work. These are marked with `# FIXED`.
# Do not change them!
gerrit: |-
[gerrit]
basePath = git # FIXED
serverId = gerrit-slave-1
# The canonical web URL has to be set to the Ingress host, if an Ingress
# is used. If a LoadBalancer-service is used, this should be set to the
# LoadBalancer's external IP. This can only be done manually after installing
# the chart, when you know the external IP the LoadBalancer got from the
# cluster.
canonicalWebUrl = http://example.com/
disableReverseDnsLookup = true
[index]
type = LUCENE
[auth]
type = DEVELOPMENT_BECOME_ANY_ACCOUNT
[httpd]
# If using an ingress use proxy-http or proxy-https
listenUrl = proxy-http://*:8080/
[sshd]
listenAddress = off
[transfer]
timeout = 120 s
[user]
name = Gerrit Code Review
email = gerrit@example.com
anonymousCoward = Unnamed User
[cache]
directory = cache
[container]
user = gerrit # FIXED
slave = true # FIXED
javaHome = /usr/lib/jvm/java-1.8-openjdk # FIXED
javaOptions = -Djavax.net.ssl.trustStore=/var/gerrit/etc/keystore # FIXED
javaOptions = -Xms200m
# Has to be lower than 'gerritSlave.resources.limits.memory'. Also
# consider memories used by other applications in the container.
javaOptions = -Xmx4g
secure: |-
# Password for the keystore added as value for 'gerritSlave.keystore'
# Only needed, if SSL is enabled.
#[httpd]
# sslKeyPassword = gerrit