about summary refs log tree commit diff
path: root/chart/templates/ingress.yaml
diff options
context:
space:
mode:
authorAlex Dunn <dunn.alex@gmail.com>2020-06-29 04:58:48 -0700
committerGitHub <noreply@github.com>2020-06-29 13:58:48 +0200
commit6d3125f9c0127095913a9f1dfd7043929ba3bb9d (patch)
treeefa8d552832a5d54608a6e84d1c5a667a3923269 /chart/templates/ingress.yaml
parent5e8f51b29fccfb7d19d53854f3472f7370593ebf (diff)
Add Helm chart (#14090)
* add Helm chart

known issues/future work:

- SSO is unsupported

- S3/Minio/GCS is unsupported

- Swift is unsupported

- WEB_DOMAIN is unsupported

- Tor is unsupported

* helm: clarify how LOCAL_DOMAIN is set

* helm: add chart description

* helm: make DB_POOL and Sidekiq concurrency configurable

* helm: only enforce pod affinity when using ReadWriteOnce

* helm: clarify compatibility

* helm: clean up application variables

* helm: add job to create initial admin
Diffstat (limited to 'chart/templates/ingress.yaml')
-rw-r--r--chart/templates/ingress.yaml41
1 files changed, 41 insertions, 0 deletions
diff --git a/chart/templates/ingress.yaml b/chart/templates/ingress.yaml
new file mode 100644
index 000000000..947bf5b70
--- /dev/null
+++ b/chart/templates/ingress.yaml
@@ -0,0 +1,41 @@
+{{- if .Values.ingress.enabled -}}
+{{- $fullName := include "mastodon.fullname" . -}}
+{{- $svcPort := .Values.service.port -}}
+{{- if semverCompare ">=1.14-0" .Capabilities.KubeVersion.GitVersion -}}
+apiVersion: networking.k8s.io/v1beta1
+{{- else -}}
+apiVersion: extensions/v1beta1
+{{- end }}
+kind: Ingress
+metadata:
+  name: {{ $fullName }}
+  labels:
+    {{- include "mastodon.labels" . | nindent 4 }}
+  {{- with .Values.ingress.annotations }}
+  annotations:
+    {{- toYaml . | nindent 4 }}
+  {{- end }}
+spec:
+  {{- if .Values.ingress.tls }}
+  tls:
+    {{- range .Values.ingress.tls }}
+    - hosts:
+        {{- range .hosts }}
+        - {{ . | quote }}
+        {{- end }}
+      secretName: {{ .secretName }}
+    {{- end }}
+  {{- end }}
+  rules:
+    - host: {{ .Values.ingress.hostname | quote }}
+      http:
+        paths:
+          - path: '/'
+            backend:
+              serviceName: {{ $fullName }}-web
+              servicePort: {{ $svcPort }}
+          - path: '/api/v1/streaming'
+            backend:
+              serviceName: {{ $fullName }}-streaming
+              servicePort: {{ .Values.application.streaming.port }}
+{{- end }}