You've already forked helm-gitea
feat(deployment): support further initContainers
The following patch intoduce the dictionaries pre and postExtraInitContainers. The dictionaries can be used to specify further initContainers before and after the gitea initializing process. For example: ```yaml postExtraInitContainers: - name: foo image: docker.io/library/busybox:latest preExtraInitContainers: - name: bar image: docker.io/library/busybox:latest ```
This commit is contained in:
@ -950,7 +950,7 @@ To comply with the Gitea helm chart definition of the digest parameter, a "custo
|
|||||||
| `global.imagePullSecrets` | global image pull secrets override; can be extended by `imagePullSecrets` | `[]` |
|
| `global.imagePullSecrets` | global image pull secrets override; can be extended by `imagePullSecrets` | `[]` |
|
||||||
| `global.storageClass` | global storage class override | `""` |
|
| `global.storageClass` | global storage class override | `""` |
|
||||||
| `global.hostAliases` | global hostAliases which will be added to the pod's hosts files | `[]` |
|
| `global.hostAliases` | global hostAliases which will be added to the pod's hosts files | `[]` |
|
||||||
| `namespace` | An explicit namespace to deploy Gitea into. Defaults to the release namespace if not specified | `""` |
|
| `namespace` | An explicit namespace to deploy gitea into. Defaults to the release namespace if not specified | `""` |
|
||||||
| `replicaCount` | number of replicas for the deployment | `1` |
|
| `replicaCount` | number of replicas for the deployment | `1` |
|
||||||
|
|
||||||
### strategy
|
### strategy
|
||||||
@ -1072,6 +1072,8 @@ To comply with the Gitea helm chart definition of the digest parameter, a "custo
|
|||||||
| `persistence.subPath` | Subdirectory of the volume to mount at | `nil` |
|
| `persistence.subPath` | Subdirectory of the volume to mount at | `nil` |
|
||||||
| `persistence.volumeName` | Name of persistent volume in PVC | `""` |
|
| `persistence.volumeName` | Name of persistent volume in PVC | `""` |
|
||||||
| `extraContainers` | Additional sidecar containers to run in the pod | `[]` |
|
| `extraContainers` | Additional sidecar containers to run in the pod | `[]` |
|
||||||
|
| `preExtraInitContainers` | Additional init containers to run in the pod before gitea runs it owns init containers. | `[]` |
|
||||||
|
| `postExtraInitContainers` | Additional init containers to run in the pod after gitea runs it owns init containers. | `[]` |
|
||||||
| `extraVolumes` | Additional volumes to mount to the Gitea deployment | `[]` |
|
| `extraVolumes` | Additional volumes to mount to the Gitea deployment | `[]` |
|
||||||
| `extraContainerVolumeMounts` | Mounts that are only mapped into the Gitea runtime/main container, to e.g. override custom templates. | `[]` |
|
| `extraContainerVolumeMounts` | Mounts that are only mapped into the Gitea runtime/main container, to e.g. override custom templates. | `[]` |
|
||||||
| `extraInitVolumeMounts` | Mounts that are only mapped into the init-containers. Can be used for additional preconfiguration. | `[]` |
|
| `extraInitVolumeMounts` | Mounts that are only mapped into the init-containers. Can be used for additional preconfiguration. | `[]` |
|
||||||
|
@ -59,6 +59,9 @@ spec:
|
|||||||
securityContext:
|
securityContext:
|
||||||
{{- toYaml .Values.podSecurityContext | nindent 8 }}
|
{{- toYaml .Values.podSecurityContext | nindent 8 }}
|
||||||
initContainers:
|
initContainers:
|
||||||
|
{{- if .Values.preExtraInitContainers }}
|
||||||
|
{{- toYaml .Values.preExtraInitContainers | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
- name: init-directories
|
- name: init-directories
|
||||||
image: "{{ include "gitea.image" . }}"
|
image: "{{ include "gitea.image" . }}"
|
||||||
imagePullPolicy: {{ .Values.image.pullPolicy }}
|
imagePullPolicy: {{ .Values.image.pullPolicy }}
|
||||||
@ -272,6 +275,9 @@ spec:
|
|||||||
{{- include "gitea.init-additional-mounts" . | nindent 12 }}
|
{{- include "gitea.init-additional-mounts" . | nindent 12 }}
|
||||||
resources:
|
resources:
|
||||||
{{- toYaml .Values.initContainers.resources | nindent 12 }}
|
{{- toYaml .Values.initContainers.resources | nindent 12 }}
|
||||||
|
{{- if .Values.postExtraInitContainers }}
|
||||||
|
{{- toYaml .Values.postExtraInitContainers | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
terminationGracePeriodSeconds: {{ .Values.deployment.terminationGracePeriodSeconds }}
|
terminationGracePeriodSeconds: {{ .Values.deployment.terminationGracePeriodSeconds }}
|
||||||
containers:
|
containers:
|
||||||
- name: {{ .Chart.Name }}
|
- name: {{ .Chart.Name }}
|
||||||
|
59
unittests/helm/deployment/extraInitContainers.yaml
Normal file
59
unittests/helm/deployment/extraInitContainers.yaml
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
suite: deployment template
|
||||||
|
release:
|
||||||
|
name: gitea-unittests
|
||||||
|
namespace: testing
|
||||||
|
templates:
|
||||||
|
- templates/gitea/deployment.yaml
|
||||||
|
- templates/gitea/config.yaml
|
||||||
|
tests:
|
||||||
|
- it: Render the deployment (default)
|
||||||
|
asserts:
|
||||||
|
- hasDocuments:
|
||||||
|
count: 1
|
||||||
|
template: templates/gitea/deployment.yaml
|
||||||
|
- lengthEqual:
|
||||||
|
path: spec.template.spec.initContainers
|
||||||
|
count: 3
|
||||||
|
template: templates/gitea/deployment.yaml
|
||||||
|
|
||||||
|
- it: Render the deployment (signing)
|
||||||
|
set:
|
||||||
|
signing.enabled: true
|
||||||
|
asserts:
|
||||||
|
- hasDocuments:
|
||||||
|
count: 1
|
||||||
|
template: templates/gitea/deployment.yaml
|
||||||
|
- lengthEqual:
|
||||||
|
path: spec.template.spec.initContainers
|
||||||
|
count: 4
|
||||||
|
template: templates/gitea/deployment.yaml
|
||||||
|
|
||||||
|
- it: Render the deployment (extraInitContainers)
|
||||||
|
set:
|
||||||
|
postExtraInitContainers:
|
||||||
|
- name: foo
|
||||||
|
image: docker.io/library/busybox:latest
|
||||||
|
preExtraInitContainers:
|
||||||
|
- name: bar
|
||||||
|
image: docker.io/library/busybox:latest
|
||||||
|
signing.enabled: true
|
||||||
|
asserts:
|
||||||
|
- hasDocuments:
|
||||||
|
count: 1
|
||||||
|
template: templates/gitea/deployment.yaml
|
||||||
|
- lengthEqual:
|
||||||
|
path: spec.template.spec.initContainers
|
||||||
|
count: 6
|
||||||
|
template: templates/gitea/deployment.yaml
|
||||||
|
- contains:
|
||||||
|
path: spec.template.spec.initContainers
|
||||||
|
content:
|
||||||
|
name: foo
|
||||||
|
image: docker.io/library/busybox:latest
|
||||||
|
template: templates/gitea/deployment.yaml
|
||||||
|
- contains:
|
||||||
|
path: spec.template.spec.initContainers
|
||||||
|
content:
|
||||||
|
name: bar
|
||||||
|
image: docker.io/library/busybox:latest
|
||||||
|
template: templates/gitea/deployment.yaml
|
14
values.yaml
14
values.yaml
@ -279,7 +279,19 @@ persistence:
|
|||||||
extraContainers: []
|
extraContainers: []
|
||||||
# - name: sidecar-bob
|
# - name: sidecar-bob
|
||||||
# image: busybox
|
# image: busybox
|
||||||
# command: [/bin/sh, -c, 'echo "Hello world"; sleep 86400']
|
# command: [/bin/sh, -c, 'echo "Hello world"']
|
||||||
|
|
||||||
|
## @param preExtraInitContainers Additional init containers to run in the pod before gitea runs it owns init containers.
|
||||||
|
preExtraInitContainers: []
|
||||||
|
# - name: pre-init-container
|
||||||
|
# image: docker.io/library/busybox
|
||||||
|
# command: [ /bin/sh, -c, 'echo "Hello world! I am a pre init container."' ]
|
||||||
|
|
||||||
|
## @param postExtraInitContainers Additional init containers to run in the pod after gitea runs it owns init containers.
|
||||||
|
postExtraInitContainers: []
|
||||||
|
# - name: post-init-container
|
||||||
|
# image: docker.io/library/busybox
|
||||||
|
# command: [ /bin/sh, -c, 'echo "Hello world! I am a post init container."' ]
|
||||||
|
|
||||||
## @param extraVolumes Additional volumes to mount to the Gitea deployment
|
## @param extraVolumes Additional volumes to mount to the Gitea deployment
|
||||||
extraVolumes: []
|
extraVolumes: []
|
||||||
|
Reference in New Issue
Block a user