## Gitea image ## ref: https://hub.docker.com/r/gitea/gitea/tags/ ## tags: mariadb: true images: registry: docker.io gitea: "gitea/gitea:1.13.1" memcached: "memcached:1.6.9-alpine" pullPolicy: IfNotPresent ## Optionally specify an array of imagePullSecrets. ## Secrets must be manually created in the namespace. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/ ## # pullSecrets: # - myRegistryKeySecretName # Allow configuration of lifecycle hooks # ref: https://kubernetes.io/docs/tasks/configure-pod-container/attach-handler-lifecycle-event/ lifecycle: {} # postStartCommand: [] # preStopCommand: [] # Config for Gitea #config: # # By default installer enabled # disableInstaller: false # # Set default user and password if installer disabled # # User gitea (name 'admin' reserved by gitea) # admin_user: gitea # admin_pass: password # # By default mailer disabled # mailer: # enabled: false # host: mail.example.com:465 # skip_verify: false # is_tls_enabled: true # from: gitea@example.com # user: gitea # passwd: password ## Cache settings for memcache memcached: maxItemMemory: 64 verbosity: v extendedOptions: modern ## Configure the ingress resource that allows you to access the ## Gitea installation. Set up the URL ## ref: http://kubernetes.io/docs/user-guide/ingress/ ## ## Configure the ingress resource that allows you to access the ## Gitea installation. Set up the URL ## ref: http://kubernetes.io/docs/user-guide/ingress/ ## ingress: ## Set to true to enable ingress record generation enabled: true ## Set this to true in order to add the corresponding annotations for cert-manager certManager: false ## When the ingress is enabled, a host pointing to this will be created hostname: gitea.local ## Ingress annotations done as key:value pairs ## For a full list of possible ingress annotations, please see ## ref: https://github.com/kubernetes/ingress-nginx/blob/master/docs/user-guide/nginx-configuration/annotations.md ## ## If tls is set to true, annotation ingress.kubernetes.io/secure-backends: "true" will automatically be set ## If certManager is set to true, annotation kubernetes.io/tls-acme: "true" will automatically be set annotations: {} # certmanager.k8s.io/cluster-issuer: letsencrypt-prod # kubernetes.io/ingress.class: nginx ## The list of additional hostnames to be covered with this ingress record. ## Most likely the hostname above will be enough, but in the event more hosts are needed, this is an array # hosts: # - name: gitea.local # path: / ## The tls configuration for the ingress ## see: https://kubernetes.io/docs/concepts/services-networking/ingress/#tls ## Uncomment below to enable tls / https for let's encrypt / cert-manager # tls: # - hosts: # - gitea.local # secretName: gitea.tls secrets: ## If you're providing your own certificates, please use this to add the certificates as secrets ## key and certificate should start with -----BEGIN CERTIFICATE----- or ## -----BEGIN RSA PRIVATE KEY----- ## ## name should line up with a tlsSecret set further up ## If you're using cert-manager, this is unneeded, as it will create the secret for you if it is not set ## ## It is also possible to create and manage the certificates outside of this helm chart ## Please see README.md for more information # - name: gitea.local-tls # key: # certificate: # ## This chart defaults to using an ingress for http, but change to LoadBalancer if using you cluster supports it service: type: ClusterIP http: port: 3000 ## Make the external port available # externalPort: 8082 # externalHost: gitea.local ssh: port: 22 ## If serving on a different external port used for determining the ssh url in the gui # externalPort: 22 # externalHost: gitea.local # externalIPs: [] ## Configure resource requests and limits ## ref: http://kubernetes.io/docs/user-guide/compute-resources/ ## resources: gitea: requests: memory: 500Mi cpu: 1000m limits: memory: 2Gi cpu: 1 memcached: requests: memory: 64Mi cpu: 50m ## Enable persistence using Persistent Volume Claims ## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/ ## ref: ## persistence: enabled: false # existingGiteaClaim: gitea-data size: 10Gi #storageClass: "-" accessMode: ReadWriteMany ## addtional annotations for PVCs. Uncommenting will prevent the PVC from being deleted. annotations: "helm.sh/resource-policy": keep ## if you want to mount a volume directly without using a storageClass or pvcs # directGiteaVolumeMount: # glusterfs: # endpoints: "192.168.1.1 192.168.1.2 192.168.1.3" # path: giteaData # directPostgresVolumeMount: # glusterfs: # endpoints: "192.168.1.1 192.168.1.2 192.168.1.3" # path: giteaPostgresData ## LFS volume lfs: enabled: false # existingGiteaClaim: gitea-lfs accessMode: ReadWriteMany size: 20Gi #storageClass: "-" annotations: "helm.sh/resource-policy": keep ## if you want to mount a volume directly without using a storageClass or pvcs # directGiteaVolumeMount: # glusterfs: # endpoints: "192.168.1.1 192.168.1.2 192.168.1.3" # path: giteaData # directPostgresVolumeMount: # glusterfs: # endpoints: "192.168.1.1 192.168.1.2 192.168.1.3" # path: giteaPostgresData ## ## MariaDB chart configuration ## ## https://github.com/helm/charts/blob/master/stable/mariadb/values.yaml ## mariadb: ## Whether to deploy a mariadb server to satisfy the applications database requirements. To use an external database set this to false and configure the externalDatabase parameters enabled: true ## Create a database and a database user ## ref: https://github.com/bitnami/bitnami-docker-mariadb/blob/master/README.md#creating-a-database-user-on-first-run ## auth: database: gitea username: gitea ## If the password is not specified, mariadb will generates a random password ## password: ThisIsMySuperSecretPassword ## MariaDB admin password ## ref: https://github.com/bitnami/bitnami-docker-mariadb/blob/master/README.md#setting-the-root-password-on-first-run ## rootPassword: ThisIsMySuperSecretPassword ## Enable persistence using Persistent Volume Claims ## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/ ## primary: persistence: enabled: true ## mariadb data Persistent Volume Storage Class ## If defined, storageClassName: ## If set to "-", storageClassName: "", which disables dynamic provisioning ## If undefined (the default) or set to null, no storageClassName spec is ## set, choosing the default provisioner. (gp2 on AWS, standard on ## GKE, AWS & OpenStack) ## #storageClass: "-" accessMode: ReadWriteOnce size: 8Gi ## Connect to an external database instead externalDB: enabled: false dbUser: "postgres" dbPassword: "" dbHost: "service-name.namespace.svc.cluster.local" # or some external host dbPort: "5432" dbDatabase: "gitea" dbSSL: "disable" existingSecret: enabled: false secretName: nameofsecret usernameKey: username passwordKey: password ## Actual Gitea configuration (modified the default .ini file for Gitea) ## This will skip the initial installation screen. You must have a secretKey already defined ## and disableInstaller set to True config: ## secretKey: ThisIsMySuperSecretKeyThatsUsedInterally disableInstaller: false offlineMode: false requireSignin: false disableRegistration: true openidSignin: false ## Common helm annotations ## Node labels and tolerations for pod assignment ## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#nodeselector ## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#taints-and-tolerations-beta-feature nodeSelector: {} tolerations: [] affinity: {} ## Annotations for the deployment and nodes. deploymentAnnotations: {} podAnnotations: {}