mirror of https://code.onedev.io/onedev/server
289 lines
11 KiB
YAML
289 lines
11 KiB
YAML
# Global values
|
|
global:
|
|
# global.nameOverride -- Override the name of the app.
|
|
nameOverride: ""
|
|
# global.fullnameOverride -- Override the fully qualified app name.
|
|
fullnameOverride: ""
|
|
# global.commonLabels -- To apply labels to all resources.
|
|
commonLabels: {}
|
|
# dept_name: platform
|
|
|
|
onedev:
|
|
# onedev.replicas -- Number of OneDev servers to run. With an enterprise license, you will be able to distribute
|
|
# different projects to different servers for horizontal scaling, as well as replicate project repositories and
|
|
# artifacts for high availability. Note that setting this param to 2 or more is only meaningful if you are
|
|
# connecting to external database; otherwise they simply run as independent OneDev instances
|
|
replicas: 1
|
|
# onedev.updateStrategy -- Valid options: `RollingUpdate`, `OnDelete`
|
|
updateStrategy:
|
|
type: RollingUpdate
|
|
trustCerts:
|
|
# onedev.trustCerts.secretName -- Name of an existing secret containing trusted certificates. You may create the
|
|
# secret with "kubectl create secret generic onedev-trustcerts -n onedev --from-file=/path/to/trust-certs",
|
|
# where /path/to/trust-certs is a local directory contains all certificates to be trusted. Certificate should be
|
|
# of base64 encoded PEM format beginning with "-----BEGIN CERTIFICATE-----" and ending with "-----END CERTIFICATE-----"
|
|
secretName: "onedev-trustcerts"
|
|
jvm:
|
|
maxMemoryPercent: "50"
|
|
# Specify OneDev Server initial settings to avoid manual setup
|
|
initSettings:
|
|
# onedev.initSettings.user -- Administrator username. Leave empty to prompt
|
|
user: ""
|
|
# onedev.initSettings.password -- Administrator Password. Leave empty to prompt
|
|
password: ""
|
|
# onedev.initSettings.email -- Administrator Email address. Leave empty to prompt
|
|
email: ""
|
|
# onedev.initSettings.serverUrl -- Server url. Leave empty to prompt. Will be ignored if ingress.host is specified
|
|
serverUrl: ""
|
|
# onedev.initSettings.sshRootUrl -- Root url to clone repository via SSH. Leave empty to derive from server url
|
|
sshRootUrl: ""
|
|
|
|
# External database configuration
|
|
database:
|
|
# database.external -- Set to **true** when using external database
|
|
external: false
|
|
# database.type-- Required: Set type of external database. Possible values `mysql`, `mariadb`, `postgresql`, `mssql`
|
|
# [external databases](https://docs.onedev.io/installation-guide/run-as-docker-container#use-external-database)
|
|
type: "mysql"
|
|
# database.host -- IP address or hostname of database
|
|
host: "onedev-mysql.onedev.svc.cluster.local"
|
|
# database.port -- Port Number
|
|
port: "3306"
|
|
# database.name -- Name of the database
|
|
name: "onedev"
|
|
# database.user -- User with access to database
|
|
user: "root"
|
|
# database.password -- Database password
|
|
password: "changeit"
|
|
# database.maximumPoolSize -- Database maximum pool size
|
|
maximumPoolSize: "25"
|
|
|
|
image:
|
|
# image.name -- Specify the image name to use (relative to `image.repository`).
|
|
name: 1dev/server
|
|
# image.tag -- Specify the image tag to use. Leave empty to use same version as chart
|
|
tag: ""
|
|
# image.repository -- Specify the image repository to use.
|
|
repository: docker.io
|
|
# image.pullPolicy -- Specify the
|
|
# [pullPolicy](https://kubernetes.io/docs/concepts/containers/images/#image-pull-policy).
|
|
pullPolicy: IfNotPresent
|
|
# image.pullSecrets -- Specify the
|
|
# [imagePullSecrets](https://kubernetes.io/docs/concepts/containers/images/#specifying-imagepullsecrets-on-a-pod).
|
|
pullSecrets: []
|
|
# - name: <REGISTRY_SECRET>
|
|
|
|
serviceAccount:
|
|
# serviceAccount.create -- If **true**, create a ServiceAccount.
|
|
create: true
|
|
# serviceAccount.name -- Specify a pre-existing ServiceAccount to use if `serviceAccount.create` is **false**.
|
|
name: onedev
|
|
# serviceAccount.annotations -- Annotations to add to the ServiceAccount, if `serviceAccount.create` is **true**.
|
|
annotations: {}
|
|
|
|
# podAnnotations -- Set annotations on Pods.
|
|
podAnnotations: {}
|
|
|
|
# podLabels -- Set labels on Pods.
|
|
podLabels: {}
|
|
|
|
# podPriorityClassName -- Set the
|
|
# [priorityClassName](https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/#priorityclass).
|
|
podPriorityClassName: ""
|
|
|
|
# podHostNetwork -- Enable the hostNetwork option on Pods.
|
|
podHostNetwork: false
|
|
|
|
# podSecurityContext -- Allows you to overwrite the default
|
|
# [PodSecurityContext](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/).
|
|
podSecurityContext: {}
|
|
|
|
# securityContext -- Specify securityContext for Containers.
|
|
securityContext: {}
|
|
# command -- Override default image command.
|
|
command: []
|
|
# args -- Override default image arguments.
|
|
args: []
|
|
|
|
# env -- Define additional environment variables.
|
|
env: []
|
|
# - name: <ENV_VAR_NAME>
|
|
# value: <ENV_VAR_VALUE>
|
|
# - name: <ENV_VAR_NAME>
|
|
# valueFrom:
|
|
# secretKeyRef:
|
|
# name: <SECRET_NAME>
|
|
# key: <KEY_NAME>
|
|
|
|
# envFrom -- Define environment variables from ConfigMap or Secret data.
|
|
envFrom: []
|
|
# - configMapRef:
|
|
# name: <CONFIGMAP_NAME>
|
|
# - secretRef:
|
|
# name: <SECRET_NAME>
|
|
|
|
# resources -- Specify resource requests and limits.
|
|
resources: {}
|
|
# requests:
|
|
# cpu: 200m
|
|
# memory: 256Mi
|
|
# limits:
|
|
# cpu: 200m
|
|
# memory: 256Mi
|
|
|
|
# lifecycle -- Specify lifecycle hooks for Containers.
|
|
lifecycle: {}
|
|
# preStop:
|
|
# exec:
|
|
# command:
|
|
# - /bin/sleep
|
|
# - "10"
|
|
|
|
# terminationGracePeriodSeconds -- Override terminationGracePeriodSeconds.
|
|
terminationGracePeriodSeconds: 60
|
|
|
|
# nodeSelector -- Configure
|
|
# [nodeSelector](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodeselector).
|
|
nodeSelector: {}
|
|
|
|
# tolerations -- Configure
|
|
# [taints and tolerations](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/).
|
|
tolerations: []
|
|
|
|
# affinity -- Configure
|
|
# [affinity and anti-affinity](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity).
|
|
affinity: {}
|
|
|
|
# topologySpreadConstraints -- Configure
|
|
# [topology spread constraints](https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/).
|
|
topologySpreadConstraints: []
|
|
|
|
service:
|
|
# service.type -- Specify the type for the Service. ClusterIP, LoadBalancer
|
|
type: "ClusterIP"
|
|
# service.annotations -- Specify annotations for the Service.
|
|
annotations: {}
|
|
# service.topologyKeys -- (array) Specify the
|
|
# [topologyKeys](https://kubernetes.io/docs/concepts/services-networking/service-topology/#using-service-topology).
|
|
topologyKeys: []
|
|
# - "kubernetes.io/hostname"
|
|
# - "topology.kubernetes.io/zone"
|
|
# - "topology.kubernetes.io/region"
|
|
# - "*"
|
|
# service.ports -- Manually change the ServicePorts
|
|
ports:
|
|
http: ""
|
|
ssh: ""
|
|
# service.nodePort -- Specify a nodePort for servcie
|
|
nodePort: ""
|
|
# service.externalTrafficPolicy -- Specify the
|
|
# [externalTrafficPolicy](https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip).
|
|
externalTrafficPolicy: ""
|
|
# service.loadBalancerIP -- Required: If service type is loadbalancer
|
|
# [loadBalancerIP](https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer).
|
|
loadBalancerIP: ""
|
|
# service.ipFamilyPolicy -- Configure
|
|
# [IPv4/IPv6 dual-stack](https://kubernetes.io/docs/concepts/services-networking/dual-stack/).
|
|
ipFamilyPolicy: ""
|
|
# service.ipFamilies -- Configure
|
|
# [IPv4/IPv6 dual-stack](https://kubernetes.io/docs/concepts/services-networking/dual-stack/).
|
|
ipFamilies: []
|
|
# Configure sepearte SSH service
|
|
separateSSH:
|
|
# service.separateSSH.enabled -- If separate SSH is enabled, a separate service is created for SSH
|
|
enabled: false
|
|
type: "ClusterIP"
|
|
port: ""
|
|
clusterIP: ""
|
|
loadBalancerIP: ""
|
|
nodePort: ""
|
|
externalTrafficPolicy: ""
|
|
externalIPs: []
|
|
# - 4.2.2.1
|
|
ipFamilyPolicy: ""
|
|
ipFamilies: []
|
|
loadBalancerSourceRanges: []
|
|
annotations: {}
|
|
topologyKeys: []
|
|
|
|
# Configure Ingress resource
|
|
ingress:
|
|
# ingress.enabled -- If **true**, create an Ingress resource.
|
|
enabled: false
|
|
# ingress.className -- Specify ingress class name. Requires Kubernetes >= 1.18.
|
|
# Refer to https://kubernetes.io/blog/2020/04/02/improvements-to-the-ingress-api-in-kubernetes-1.18/#specifying-the-class-of-an-ingress for details
|
|
className: ""
|
|
# ingress.annotations -- Specify annotations for the Ingress.
|
|
annotations:
|
|
nginx.ingress.kubernetes.io/affinity: "cookie"
|
|
nginx.ingress.kubernetes.io/affinity-mode: "persistent"
|
|
nginx.ingress.kubernetes.io/session-cookie-name: "session-sticky"
|
|
nginx.ingress.kubernetes.io/session-cookie-expires: "172800"
|
|
nginx.ingress.kubernetes.io/session-cookie-max-age: "172800"
|
|
nginx.ingress.kubernetes.io/proxy-body-size: "0"
|
|
# ingress.host -- Set the host name
|
|
host: onedev.example.com
|
|
|
|
# ingress.tls -- Configure TLS for the Ingress.
|
|
tls:
|
|
enabled: false
|
|
secretName: "onedev-tls"
|
|
acme:
|
|
# ingress.tls.acme.enabled -- If **true**, create certificate issuer resource
|
|
enabled: false
|
|
# ingress.tls.acme.type -- Specify ACME type. Currently only supports letsencrypt
|
|
type: "letsencrypt"
|
|
# ingress.tls.acme.email -- Email to send certificate status notice
|
|
email: you@example.com
|
|
# ingress.tls.acme.production -- If **true**, generate a production certificate;
|
|
# otherwise generate staging certificate. Set this to **false** to avoid reaching
|
|
# rate limit while you are testing your setup
|
|
production: false
|
|
|
|
# extraVolumes -- Specify additional Volumes to use.
|
|
extraVolumes: []
|
|
|
|
# extraVolumeMounts -- Specify Additional VolumeMounts to use.
|
|
extraVolumeMounts: []
|
|
|
|
# initContainers -- Specify initContainers to be added.
|
|
initContainers: []
|
|
|
|
# extraContainers -- Specify extra Containers to be added.
|
|
extraContainers: []
|
|
|
|
persistence:
|
|
# persistence.storageClassName -- (string) Specify the storageClassName for PersistentVolumeClaims.
|
|
storageClassName: ""
|
|
# persistence.accessModes -- Specify the accessModes for PersistentVolumeClaims.
|
|
accessModes: "ReadWriteOnce"
|
|
# persistence.size -- Specify the size of PersistentVolumeClaims.
|
|
size: 100Gi
|
|
# persistence.selector -- Specify the selectors for PersistentVolumeClaims.
|
|
selector: {}
|
|
|
|
# dnsPolicy -- Specify the
|
|
# [dnsPolicy](https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy).
|
|
dnsPolicy: ClusterFirst
|
|
|
|
# dnsConfig -- Specify the
|
|
# [dnsConfig](https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-dns-config).
|
|
dnsConfig: {}
|
|
# nameservers:
|
|
# - 1.2.3.4
|
|
# searches:
|
|
# - ns1.svc.cluster-domain.example
|
|
# - my.dns.search.suffix
|
|
# options:
|
|
# - name: ndots
|
|
# value: "2"
|
|
# - name: edns0
|
|
|
|
# livenessProbe -- Specify the livenessProbe
|
|
# [configuration](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#configure-probes).
|
|
livenessProbe: {}
|
|
|
|
# readinessProbe -- Specify the readinessProbe
|
|
# [configuration](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#configure-probes).
|
|
readinessProbe: {}
|