* add admin and worker to helm charts * workers are stateless, admin is stateful * removed the duplicate admin-deployment.yaml * address comments * address comments * purge * Update README.md * Update k8s/charts/seaweedfs/templates/admin/admin-ingress.yaml Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * address comments * address comments * supports Kubernetes versions from v1.14 to v1.30+, ensuring broad compatibility * add probe for workers * address comments * add a todo * chore: trigger CI * use port name for probes in admin statefulset * fix: remove trailing blank line in values.yaml * address code review feedback - Quote admin credentials in shell command to handle special characters - Remove unimplemented capabilities (remote, replication) from worker defaults - Add security note about admin password character restrictions --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
53 lines
2.0 KiB
YAML
53 lines
2.0 KiB
YAML
{{- if and .Values.admin.enabled .Values.admin.ingress.enabled }}
|
|
{{- if semverCompare ">=1.19-0" .Capabilities.KubeVersion.GitVersion }}
|
|
apiVersion: networking.k8s.io/v1
|
|
{{- else if semverCompare ">=1.14-0" .Capabilities.KubeVersion.GitVersion }}
|
|
apiVersion: networking.k8s.io/v1beta1
|
|
{{- else }}
|
|
apiVersion: extensions/v1beta1
|
|
{{- end }}
|
|
kind: Ingress
|
|
metadata:
|
|
name: ingress-{{ template "seaweedfs.name" . }}-admin
|
|
namespace: {{ .Release.Namespace }}
|
|
annotations:
|
|
{{- if and (not (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion)) .Values.admin.ingress.className }}
|
|
kubernetes.io/ingress.class: {{ .Values.admin.ingress.className }}
|
|
{{- end }}
|
|
{{- with .Values.admin.ingress.annotations }}
|
|
{{- toYaml . | nindent 4 }}
|
|
{{- end }}
|
|
labels:
|
|
app.kubernetes.io/name: {{ template "seaweedfs.name" . }}
|
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
|
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
app.kubernetes.io/component: admin
|
|
spec:
|
|
{{- if and (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion) .Values.admin.ingress.className }}
|
|
ingressClassName: {{ .Values.admin.ingress.className | quote }}
|
|
{{- end }}
|
|
tls:
|
|
{{ .Values.admin.ingress.tls | default list | toYaml | nindent 6}}
|
|
rules:
|
|
- {{- if .Values.admin.ingress.host }}
|
|
host: {{ .Values.admin.ingress.host | quote }}
|
|
{{- end }}
|
|
http:
|
|
paths:
|
|
- path: {{ .Values.admin.ingress.path | quote }}
|
|
{{- if semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion }}
|
|
pathType: {{ .Values.admin.ingress.pathType | quote }}
|
|
{{- end }}
|
|
backend:
|
|
{{- if semverCompare ">=1.19-0" .Capabilities.KubeVersion.GitVersion }}
|
|
service:
|
|
name: {{ template "seaweedfs.name" . }}-admin
|
|
port:
|
|
number: {{ .Values.admin.port }}
|
|
{{- else }}
|
|
serviceName: {{ template "seaweedfs.name" . }}-admin
|
|
servicePort: {{ .Values.admin.port }}
|
|
{{- end }}
|
|
{{- end }}
|