diff --git a/README.md b/README.md index 07ad24c..ab7191a 100644 --- a/README.md +++ b/README.md @@ -291,10 +291,13 @@ Annotations can be added to the Gitea pod. ### Others -| Parameter | Description | Default | -|---------------------|-----------------------------------|------------------------------| -|statefulset.terminationGracePeriodSeconds| Image to start for this pod | gitea/gitea | -|statefulset.env | Additional environment variables to pass to containers | [] | +| Parameter | Description | Default | +|-------------------------------------------|--------------------------------------------------------|-------------| +| statefulset.terminationGracePeriodSeconds | Image to start for this pod | gitea/gitea | +| statefulset.env | Additional environment variables to pass to containers | [] | +| extraVolumes | Additional volumes to mount to the Gitea statefulset | {} | +| extraVolumeMounts | Additional volumes mounts for the Gitea containers | {} | +| initPreScript | Bash script copied verbatim to start of init container | | ### Image diff --git a/templates/gitea/init.yaml b/templates/gitea/init.yaml index fd60719..79c2a00 100644 --- a/templates/gitea/init.yaml +++ b/templates/gitea/init.yaml @@ -8,6 +8,14 @@ type: Opaque stringData: init_gitea.sh: |- #!/bin/bash + {{- if .Values.initPreScript }} + # BEGIN: initPreScript + {{- with .Values.initPreScript -}} + {{ . | nindent 4}} + {{- end -}} + # END: initPreScript + {{- end }} + mkdir -p /data/git/.ssh chmod -R 700 /data/git/.ssh mkdir -p /data/gitea/conf @@ -32,4 +40,4 @@ stringData: {{- include "gitea.ldap_settings" . | nindent 6 }} \ ) \ {{- end }} - ' \ No newline at end of file + ' diff --git a/templates/gitea/statefulset.yaml b/templates/gitea/statefulset.yaml index bf41b3b..dff1400 100644 --- a/templates/gitea/statefulset.yaml +++ b/templates/gitea/statefulset.yaml @@ -31,6 +31,11 @@ spec: - name: init image: "{{ .Values.image.repository }}:{{ ternary .Values.image.version .Values.image.tag (hasKey .Values.image "version") }}" command: ["/usr/sbin/init_gitea.sh"] + env: + {{- range .Values.statefulset.env }} + - name: {{ .name | quote | nospace }} + value: {{ .value | quote }} + {{- end }} volumeMounts: - name: init mountPath: /usr/sbin @@ -38,6 +43,9 @@ spec: mountPath: /etc/gitea/conf - name: data mountPath: /data + {{- if .Values.extraVolumeMounts }} + {{- toYaml .Values.extraVolumeMounts | nindent 12 }} + {{- end }} terminationGracePeriodSeconds: {{ .Values.statefulset.terminationGracePeriodSeconds }} containers: - name: {{ .Chart.Name }} @@ -78,6 +86,9 @@ spec: volumeMounts: - name: data mountPath: /data + {{- if .Values.extraVolumeMounts }} + {{- toYaml .Values.extraVolumeMounts | nindent 12 }} + {{- end }} {{- with .Values.nodeSelector }} nodeSelector: {{- toYaml . | nindent 8 }} @@ -98,6 +109,9 @@ spec: - name: config secret: secretName: {{ include "gitea.fullname" . }} + {{- if .Values.extraVolumes }} + {{- toYaml .Values.extraVolumes | nindent 8 }} + {{- end }} {{- if and .Values.persistence.enabled .Values.persistence.existingClaim }} - name: data persistentVolumeClaim: diff --git a/values.yaml b/values.yaml index 98c7a63..760c23e 100644 --- a/values.yaml +++ b/values.yaml @@ -69,11 +69,36 @@ statefulset: persistence: enabled: true - # existingClaim: + # existingClaim: size: 10Gi accessModes: - ReadWriteOnce +# additional volumes to add to the Gitea statefulset. +extraVolumes: +# - name: postgres-ssl-vol +# secret: +# secretName: gitea-postgres-ssl + + +# additional volumes to mount, both to the init container and to the main +# container. As an example, can be used to mount a client cert when connecting +# to an external Postgres server. +extraVolumeMounts: +# - name: postgres-ssl-vol +# readOnly: true +# mountPath: "/pg-ssl" + +# bash shell script copied verbatim to the start of the init-container. +initPreScript: "" +# +# initPreScript: | +# mkdir -p /data/git/.postgresql +# cp /pg-ssl/* /data/git/.postgresql/ +# chown -R git:git /data/git/.postgresql/ +# chmod 400 /data/git/.postgresql/postgresql.key + + gitea: admin: username: gitea_admin @@ -96,8 +121,8 @@ gitea: config: {} # APP_NAME: "Gitea: Git with a cup of tea" - # RUN_MODE: dev - # + # RUN_MODE: dev + # # server: # SSH_PORT: 22 #