mirror of
https://codeberg.org/scip/ephemerup.git
synced 2025-12-16 20:20:58 +01:00
first working chart version
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
# ephemerup
|
||||
|
||||
A Helm chart for ephemerup
|
||||
  
|
||||
|
||||
A Helm chart for Ephemerup.
|
||||
|
||||
## Source Code
|
||||
|
||||
@@ -14,108 +16,111 @@ A Helm chart for ephemerup
|
||||
|
||||
## Values
|
||||
|
||||
| Key | Type | Description | Default |
|
||||
|---------------------------------------------------|--------|-----------------------------------------------------------|-----------------------|
|
||||
| kubeVersion | string | | `""` |
|
||||
| nameOverride | string | | `""` |
|
||||
| fullnameOverride | string | | `""` |
|
||||
| namespaceOverride | string | | `""` |
|
||||
| commonLabels | object | | `{}` |
|
||||
| commonAnnotations.app | string | | `"ephemerup"` |
|
||||
| clusterDomain | string | | `"cluster.local"` |
|
||||
| logLevel | string | | `"info"` |
|
||||
| image.registry | string | | `"docker.io"` |
|
||||
| image.repository | string | | `"tlinden/ephemerup"` |
|
||||
| image.tag | string | | `"latest"` |
|
||||
| image.pullPolicy | string | | `"IfNotPresent"` |
|
||||
| image.pullSecrets | list | | `[]` |
|
||||
| secrets | object | | `{}` |
|
||||
| mountSecrets | list | | `[]` |
|
||||
| env | list | | `[]` |
|
||||
| config | object | Backup plans. For details, see [values.yaml](values.yaml) | `{}` |
|
||||
| replicaCount | int | | `1` |
|
||||
| sidecars | list | | `[]` |
|
||||
| lifecycleHooks | object | | `{}` |
|
||||
| podAnnotations | object | | `{}` |
|
||||
| podLabels | object | | `{}` |
|
||||
| updateStrategy.type | string | | `"RollingUpdate"` |
|
||||
| podAffinityPreset | string | | `""` |
|
||||
| podAntiAffinityPreset | string | | `"soft"` |
|
||||
| nodeAffinityPreset.type | string | | `""` |
|
||||
| nodeAffinityPreset.key | string | | `""` |
|
||||
| nodeAffinityPreset.values | list | | `[]` |
|
||||
| affinity | object | | `{}` |
|
||||
| nodeSelector | object | | `{}` |
|
||||
| tolerations | list | | `[]` |
|
||||
| resources.limits.cpu | string | | `"500m"` |
|
||||
| resources.limits.memory | string | | `"256Mi"` |
|
||||
| resources.requests.cpu | string | | `"100m"` |
|
||||
| resources.requests.memory | string | | `"128Mi"` |
|
||||
| podSecurityContext.fsGroup | int | | `65534` |
|
||||
| containerSecurityContext.enabled | bool | | `false` |
|
||||
| containerSecurityContext.allowPrivilegeEscalation | bool | | `false` |
|
||||
| containerSecurityContext.capabilities.drop[0] | string | | `"ALL"` |
|
||||
| containerSecurityContext.privileged | bool | | `false` |
|
||||
| containerSecurityContext.runAsUser | int | | `0` |
|
||||
| containerSecurityContext.runAsNonRoot | bool | | `false` |
|
||||
| livenessProbe.enabled | bool | | `true` |
|
||||
| livenessProbe.initialDelaySeconds | int | | `5` |
|
||||
| livenessProbe.timeoutSeconds | int | | `1` |
|
||||
| livenessProbe.periodSeconds | int | | `20` |
|
||||
| livenessProbe.failureThreshold | int | | `6` |
|
||||
| livenessProbe.successThreshold | int | | `1` |
|
||||
| readinessProbe.enabled | bool | | `true` |
|
||||
| readinessProbe.initialDelaySeconds | int | | `5` |
|
||||
| readinessProbe.timeoutSeconds | int | | `1` |
|
||||
| readinessProbe.periodSeconds | int | | `20` |
|
||||
| readinessProbe.failureThreshold | int | | `6` |
|
||||
| readinessProbe.successThreshold | int | | `1` |
|
||||
| startupProbe.enabled | bool | | `true` |
|
||||
| startupProbe.initialDelaySeconds | int | | `10` |
|
||||
| startupProbe.timeoutSeconds | int | | `1` |
|
||||
| startupProbe.periodSeconds | int | | `20` |
|
||||
| startupProbe.failureThreshold | int | | `6` |
|
||||
| startupProbe.successThreshold | int | | `1` |
|
||||
| customLivenessProbe | object | | `{}` |
|
||||
| customStartupProbe | object | | `{}` |
|
||||
| customReadinessProbe | object | | `{}` |
|
||||
| service.type | string | | `"ClusterIP"` |
|
||||
| service.ports.http | int | | `8090` |
|
||||
| service.nodePorts.http | string | | `""` |
|
||||
| service.clusterIP | string | | `""` |
|
||||
| service.extraPorts | list | | `[]` |
|
||||
| service.loadBalancerIP | string | | `""` |
|
||||
| service.loadBalancerSourceRanges | list | | `[]` |
|
||||
| service.externalTrafficPolicy | string | | `"Cluster"` |
|
||||
| service.annotations | object | | `{}` |
|
||||
| service.sessionAffinity | string | | `"None"` |
|
||||
| service.sessionAffinityConfig | object | | `{}` |
|
||||
| ingress.enabled | bool | | `false` |
|
||||
| ingress.pathType | string | | `"Prefix"` |
|
||||
| ingress.apiVersion | string | | `""` |
|
||||
| ingress.hostname | string | | `"ephemerup.local"` |
|
||||
| ingress.path | string | | `"/"` |
|
||||
| ingress.annotations | object | | `{}` |
|
||||
| ingress.tls | bool | | `false` |
|
||||
| ingress.tlsSecretName | string | | `""` |
|
||||
| ingress.extraPaths | list | | `[]` |
|
||||
| ingress.selfSigned | bool | | `false` |
|
||||
| ingress.ingressClassName | string | | `"nginx"` |
|
||||
| ingress.extraHosts | list | | `[]` |
|
||||
| ingress.extraTls | list | | `[]` |
|
||||
| ingress.secrets | list | | `[]` |
|
||||
| ingress.extraRules | list | | `[]` |
|
||||
metrics.serviceMonitor.enabled | bool | `true` | |
|
||||
| metrics.serviceMonitor.port | string | `"http"` | |
|
||||
| metrics.serviceMonitor.namespace | string | `""` | |
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
| affinity | object | `{}` | |
|
||||
| clusterDomain | string | `"cluster.local"` | |
|
||||
| commonAnnotations.app | string | `"ephemerup"` | |
|
||||
| commonLabels | object | `{}` | |
|
||||
| config.apicontexts[0].context | string | `"root"` | |
|
||||
| config.apicontexts[0].key | string | `"0fddbff5d8010f81cd28a7d77f3e38981b13d6164c2fd6e1c3f60a4287630c37"` | |
|
||||
| config.bodylimit | int | `1024` | |
|
||||
| config.listen | int | `8080` | |
|
||||
| config.mail.from | string | `"root@localhost"` | |
|
||||
| config.mail.port | int | `25` | |
|
||||
| config.mail.server | string | `"localhost"` | |
|
||||
| config.super | string | `"root"` | |
|
||||
| containerSecurityContext.allowPrivilegeEscalation | bool | `false` | |
|
||||
| containerSecurityContext.capabilities.drop[0] | string | `"ALL"` | |
|
||||
| containerSecurityContext.enabled | bool | `false` | |
|
||||
| containerSecurityContext.privileged | bool | `false` | |
|
||||
| containerSecurityContext.runAsNonRoot | bool | `false` | |
|
||||
| containerSecurityContext.runAsUser | int | `0` | |
|
||||
| customLivenessProbe | object | `{}` | |
|
||||
| customReadinessProbe | object | `{}` | |
|
||||
| customStartupProbe | object | `{}` | |
|
||||
| env | list | `[]` | |
|
||||
| fullnameOverride | string | `""` | |
|
||||
| image.pullPolicy | string | `"IfNotPresent"` | |
|
||||
| image.pullSecrets | list | `[]` | |
|
||||
| image.registry | string | `"ghcr.io/tlinden"` | |
|
||||
| image.repository | string | `"ephemerup"` | |
|
||||
| image.tag | string | `"latest"` | |
|
||||
| ingress.annotations | object | `{}` | |
|
||||
| ingress.apiVersion | string | `""` | |
|
||||
| ingress.enabled | bool | `false` | |
|
||||
| ingress.extraHosts | list | `[]` | |
|
||||
| ingress.extraPaths | list | `[]` | |
|
||||
| ingress.extraRules | list | `[]` | |
|
||||
| ingress.extraTls | list | `[]` | |
|
||||
| ingress.hostname | string | `"ephemerup.local"` | |
|
||||
| ingress.ingressClassName | string | `"nginx"` | |
|
||||
| ingress.path | string | `"/"` | |
|
||||
| ingress.pathType | string | `"Prefix"` | |
|
||||
| ingress.secrets | list | `[]` | |
|
||||
| ingress.selfSigned | bool | `false` | |
|
||||
| ingress.tls | bool | `false` | |
|
||||
| ingress.tlsSecretName | string | `""` | |
|
||||
| kubeVersion | string | `""` | |
|
||||
| lifecycleHooks | object | `{}` | |
|
||||
| livenessProbe.enabled | bool | `true` | |
|
||||
| livenessProbe.failureThreshold | int | `6` | |
|
||||
| livenessProbe.initialDelaySeconds | int | `5` | |
|
||||
| livenessProbe.periodSeconds | int | `20` | |
|
||||
| livenessProbe.successThreshold | int | `1` | |
|
||||
| livenessProbe.timeoutSeconds | int | `1` | |
|
||||
| logLevel | string | `"info"` | |
|
||||
| metrics.serviceMonitor.enabled | bool | `false` | |
|
||||
| metrics.serviceMonitor.interval | string | `"30s"` | |
|
||||
| metrics.serviceMonitor.namespace | string | `""` | |
|
||||
| metrics.serviceMonitor.port | string | `"http"` | |
|
||||
| metrics.serviceMonitor.scrapeTimeout | string | `"10s"` | |
|
||||
| storage.longTerm | object | `{"name":"ephemerup-storage","spec":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"100Gi"}},"storageClassName":"standard"}}` | Persistent volume for backups, see `config.retention` |
|
||||
| mountSecrets | list | `[]` | |
|
||||
| nameOverride | string | `""` | |
|
||||
| namespaceOverride | string | `""` | |
|
||||
| nodeAffinityPreset.key | string | `""` | |
|
||||
| nodeAffinityPreset.type | string | `""` | |
|
||||
| nodeAffinityPreset.values | list | `[]` | |
|
||||
| nodeSelector | object | `{}` | |
|
||||
| podAffinityPreset | string | `""` | |
|
||||
| podAnnotations | object | `{}` | |
|
||||
| podAntiAffinityPreset | string | `"soft"` | |
|
||||
| podLabels | object | `{}` | |
|
||||
| podSecurityContext.fsGroup | int | `65534` | |
|
||||
| readinessProbe.enabled | bool | `true` | |
|
||||
| readinessProbe.failureThreshold | int | `6` | |
|
||||
| readinessProbe.initialDelaySeconds | int | `5` | |
|
||||
| readinessProbe.periodSeconds | int | `20` | |
|
||||
| readinessProbe.successThreshold | int | `1` | |
|
||||
| readinessProbe.timeoutSeconds | int | `1` | |
|
||||
| replicaCount | int | `1` | |
|
||||
| resources.limits.cpu | string | `"500m"` | |
|
||||
| resources.limits.memory | string | `"256Mi"` | |
|
||||
| resources.requests.cpu | string | `"100m"` | |
|
||||
| resources.requests.memory | string | `"128Mi"` | |
|
||||
| secrets | object | `{}` | |
|
||||
| service.annotations | object | `{}` | |
|
||||
| service.clusterIP | string | `""` | |
|
||||
| service.externalTrafficPolicy | string | `"Cluster"` | |
|
||||
| service.extraPorts | list | `[]` | |
|
||||
| service.loadBalancerIP | string | `""` | |
|
||||
| service.loadBalancerSourceRanges | list | `[]` | |
|
||||
| service.nodePorts.http | string | `""` | |
|
||||
| service.ports.http | int | `8080` | |
|
||||
| service.sessionAffinity | string | `"None"` | |
|
||||
| service.sessionAffinityConfig | object | `{}` | |
|
||||
| service.type | string | `"ClusterIP"` | |
|
||||
| sidecars | list | `[]` | |
|
||||
| startupProbe.enabled | bool | `true` | |
|
||||
| startupProbe.failureThreshold | int | `6` | |
|
||||
| startupProbe.initialDelaySeconds | int | `10` | |
|
||||
| startupProbe.periodSeconds | int | `20` | |
|
||||
| startupProbe.successThreshold | int | `1` | |
|
||||
| startupProbe.timeoutSeconds | int | `1` | |
|
||||
| storage.longTerm | object | `{"name":"ephemerup-storage","spec":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"10Gi"}},"storageClassName":"standard"}}` | Persistent volume for bolt database and uploads |
|
||||
| storage.tmp | object | `{"name":"ephemerup-tmp","spec":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"10Gi"}},"storageClassName":"standard"}}` | Persistent volume for temporary files |
|
||||
| storage.restoreTmp.name | string | `"ephemerup-restore-tmp"` | |
|
||||
| storage.restoreTmp.spec.accessModes[0] | string | `"ReadWriteOnce"` | |
|
||||
| storage.restoreTmp.spec.resources.requests.storage | string | `"100Gi"` | |
|
||||
| storage.restoreTmp.spec.storageClassName | string | `"standard"` | |
|
||||
| tolerations | list | `[]` | |
|
||||
| updateStrategy.type | string | `"RollingUpdate"` | |
|
||||
|
||||
----------------------------------------------
|
||||
Autogenerated from chart metadata using [helm-docs v1.11.0](https://github.com/norwoodj/helm-docs/releases/v1.11.0)
|
||||
Autogenerated from chart metadata using [helm-docs v1.11.2](https://github.com/norwoodj/helm-docs/releases/v1.11.2)
|
||||
|
||||
BIN
charts/ephemerup/charts/common-1.16.0.tgz
Normal file
BIN
charts/ephemerup/charts/common-1.16.0.tgz
Normal file
Binary file not shown.
@@ -23,7 +23,9 @@ data:
|
||||
server = {{ .Values.config.mail.server | quote }}
|
||||
port = {{ .Values.config.mail.port | quote }}
|
||||
from = {{ .Values.config.mail.from | quote }}
|
||||
{{- if .Values.config.password }}
|
||||
password = {{ .Values.config.password | quote }}
|
||||
{{- end }}
|
||||
}
|
||||
apicontexts = [
|
||||
{{- range $context := .Values.config.apicontexts }}
|
||||
@@ -33,4 +35,5 @@ data:
|
||||
}
|
||||
{{- end }}
|
||||
]
|
||||
storagedir = "/data"
|
||||
{{- end }}
|
||||
|
||||
@@ -32,8 +32,7 @@ spec:
|
||||
- name: ephemerup
|
||||
image: {{ include "ephemerup.image" . }}
|
||||
imagePullPolicy: {{ .Values.image.pullPolicy | quote}}
|
||||
args:
|
||||
- "-LogLevel={{ .Values.logLevel }}"
|
||||
command: ['/app/ephemerupd', '-c', '/config/ephemerup.hcl']
|
||||
env:
|
||||
{{- range $envVar := .Values.env }}
|
||||
- name: {{ $envVar.name }}
|
||||
@@ -46,7 +45,7 @@ spec:
|
||||
{{- if .Values.livenessProbe.enabled }}
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
port: http
|
||||
port: {{ .Values.service.ports.http }}
|
||||
path: /status
|
||||
initialDelaySeconds: {{ .Values.livenessProbe.initialDelaySeconds }}
|
||||
periodSeconds: {{ .Values.livenessProbe.periodSeconds }}
|
||||
@@ -59,7 +58,7 @@ spec:
|
||||
{{- if .Values.readinessProbe.enabled }}
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
port: http
|
||||
port: {{ .Values.service.ports.http }}
|
||||
path: /status
|
||||
initialDelaySeconds: {{ .Values.readinessProbe.initialDelaySeconds }}
|
||||
periodSeconds: {{ .Values.readinessProbe.periodSeconds }}
|
||||
@@ -72,7 +71,7 @@ spec:
|
||||
{{- if .Values.startupProbe.enabled }}
|
||||
startupProbe:
|
||||
tcpSocket:
|
||||
port: http
|
||||
port: {{ .Values.service.ports.http }}
|
||||
initialDelaySeconds: {{ .Values.startupProbe.initialDelaySeconds }}
|
||||
periodSeconds: {{ .Values.startupProbe.periodSeconds }}
|
||||
timeoutSeconds: {{ .Values.startupProbe.timeoutSeconds }}
|
||||
@@ -89,11 +88,9 @@ spec:
|
||||
{{- end }}
|
||||
volumeMounts:
|
||||
- name: "ephemerup-storage"
|
||||
mountPath: "/storage"
|
||||
mountPath: "/data"
|
||||
- name: "ephemerup-tmp"
|
||||
mountPath: "/tmp"
|
||||
- name: "ephemerup-tmp"
|
||||
mountPath: "/data"
|
||||
- mountPath: "/config/ephemerup.hcl"
|
||||
name: config
|
||||
subPath: "ephemerup.hcl"
|
||||
|
||||
@@ -29,8 +29,8 @@ logLevel: info
|
||||
|
||||
##
|
||||
image:
|
||||
registry: docker.io
|
||||
repository: tlinden/ephemerup
|
||||
registry: ghcr.io/tlinden
|
||||
repository: ephemerup
|
||||
tag: "latest"
|
||||
## Specify a imagePullPolicy
|
||||
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
|
||||
@@ -71,7 +71,8 @@ config:
|
||||
server: "localhost"
|
||||
port: 25
|
||||
from: "root@localhost"
|
||||
password: ""
|
||||
## required when using SMTP Auth
|
||||
#password: ""
|
||||
## context config, add more as needed
|
||||
apicontexts:
|
||||
- context: "root"
|
||||
@@ -270,7 +271,7 @@ service:
|
||||
## @param service.ports.http application service HTTP port
|
||||
##
|
||||
ports:
|
||||
http: 8090
|
||||
http: 8080
|
||||
## @param service.nodePorts.http Node ports to expose
|
||||
## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport
|
||||
##
|
||||
@@ -449,7 +450,7 @@ metrics:
|
||||
scrapeTimeout: "10s"
|
||||
|
||||
storage:
|
||||
# -- Persistent volume for backups, see `config.retention`
|
||||
# -- Persistent volume for bolt database and uploads
|
||||
longTerm:
|
||||
name: "ephemerup-storage"
|
||||
spec:
|
||||
@@ -469,12 +470,3 @@ storage:
|
||||
requests:
|
||||
storage: 10Gi
|
||||
storageClassName: standard
|
||||
restoreTmp:
|
||||
name: "ephemerup-restore-tmp"
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 10Gi
|
||||
storageClassName: standard
|
||||
|
||||
Reference in New Issue
Block a user