3
0
mirror of https://github.com/mastodon/chart synced 2025-05-18 13:03:21 +00:00

Merge pull request #5 from jessebot/fix-existing-claims

Add `mastodon.persistence.assets.existingClaim` and `mastodon.persistence.assets.existingClaim`
This commit is contained in:
JesseBot 2023-07-14 15:55:52 +02:00 committed by GitHub
commit e5cef9f1a0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
13 changed files with 46 additions and 18 deletions

View File

@ -15,7 +15,7 @@ type: application
# This is the chart version. This version number should be incremented each time you make changes # This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version. # to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/) # Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 4.0.9 version: 4.1.0
# This is the version number of the application being deployed. This version number should be # This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to # incremented each time you make changes to the application. Versions are not expected to

View File

@ -1,6 +1,6 @@
# mastodon # mastodon
![Version: 4.0.9](https://img.shields.io/badge/Version-4.0.9-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: v4.1.4](https://img.shields.io/badge/AppVersion-v4.1.4-informational?style=flat-square) ![Version: 4.1.0](https://img.shields.io/badge/Version-4.1.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: v4.1.4](https://img.shields.io/badge/AppVersion-v4.1.4-informational?style=flat-square)
Mastodon is a free, open-source social network server based on ActivityPub. Mastodon is a free, open-source social network server based on ActivityPub.
@ -45,8 +45,10 @@ Mastodon is a free, open-source social network server based on ActivityPub.
| mastodon.locale | string | `"en"` | available locales: https://github.com/mastodon/mastodon/blob/main/config/application.rb#L71 | | mastodon.locale | string | `"en"` | available locales: https://github.com/mastodon/mastodon/blob/main/config/application.rb#L71 |
| mastodon.metrics.statsd.address | string | `""` | Enable statsd publishing via STATSD_ADDR environment variable | | mastodon.metrics.statsd.address | string | `""` | Enable statsd publishing via STATSD_ADDR environment variable |
| mastodon.persistence.assets.accessMode | string | `"ReadWriteOnce"` | ReadWriteOnce is more widely supported than ReadWriteMany, but limits scalability, since it requires the Rails and Sidekiq pods to run on the same node. | | mastodon.persistence.assets.accessMode | string | `"ReadWriteOnce"` | ReadWriteOnce is more widely supported than ReadWriteMany, but limits scalability, since it requires the Rails and Sidekiq pods to run on the same node. |
| mastodon.persistence.assets.existingClaim | string | `nil` | name of existing persistent volume claim to use for assets |
| mastodon.persistence.assets.resources.requests.storage | string | `"10Gi"` | | | mastodon.persistence.assets.resources.requests.storage | string | `"10Gi"` | |
| mastodon.persistence.system.accessMode | string | `"ReadWriteOnce"` | | | mastodon.persistence.system.accessMode | string | `"ReadWriteOnce"` | |
| mastodon.persistence.system.existingClaim | string | `nil` | name of existing persistent volume claim to use for system |
| mastodon.persistence.system.resources.requests.storage | string | `"100Gi"` | | | mastodon.persistence.system.resources.requests.storage | string | `"100Gi"` | |
| mastodon.preparedStatements | bool | `true` | | | mastodon.preparedStatements | bool | `true` | |
| mastodon.s3.access_key | string | `""` | | | mastodon.s3.access_key | string | `""` | |

View File

@ -73,6 +73,28 @@ Create the name of the service account to use
{{- end }} {{- end }}
{{- end }} {{- end }}
{{/*
Create the name of the assets persistent volume to use
*/}}
{{- define "mastodon.pvc.assets" -}}
{{- if .Values.mastodon.persistence.assets.existingClaim }}
{{- printf "%s" (tpl .Values.mastodon.persistence.assets.existingClaim $) -}}
{{- else -}}
{{- printf "%s-assets" (include "common.names.fullname" .) -}}
{{- end -}}
{{- end -}}
{{/*
Create the name of the system persistent volume to use
*/}}
{{- define "mastodon.pvc.system" -}}
{{- if .Values.mastodon.persistence.system.existingClaim }}
{{- printf "%s" (tpl .Values.mastodon.persistence.system.existingClaim $) -}}
{{- else -}}
{{- printf "%s-system" (include "common.names.fullname" .) -}}
{{- end -}}
{{- end -}}
{{/* {{/*
Create a default fully qualified name for dependent services. Create a default fully qualified name for dependent services.
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).

View File

@ -36,10 +36,10 @@ spec:
volumes: volumes:
- name: assets - name: assets
persistentVolumeClaim: persistentVolumeClaim:
claimName: {{ template "mastodon.fullname" . }}-assets claimName: {{ template "mastodon.pvc.assets" . }}
- name: system - name: system
persistentVolumeClaim: persistentVolumeClaim:
claimName: {{ template "mastodon.fullname" . }}-system claimName: {{ template "mastodon.pvc.system" . }}
{{- end }} {{- end }}
containers: containers:
- name: {{ include "mastodon.fullname" . }}-media-remove - name: {{ include "mastodon.fullname" . }}-media-remove

View File

@ -58,10 +58,10 @@ spec:
volumes: volumes:
- name: assets - name: assets
persistentVolumeClaim: persistentVolumeClaim:
claimName: {{ template "mastodon.fullname" $context }}-assets claimName: {{ template "mastodon.pvc.assets" $context }}
- name: system - name: system
persistentVolumeClaim: persistentVolumeClaim:
claimName: {{ template "mastodon.fullname" $context }}-system claimName: {{ template "mastodon.pvc.system" $context }}
{{- end }} {{- end }}
containers: containers:
- name: {{ $context.Chart.Name }} - name: {{ $context.Chart.Name }}

View File

@ -41,10 +41,10 @@ spec:
volumes: volumes:
- name: assets - name: assets
persistentVolumeClaim: persistentVolumeClaim:
claimName: {{ template "mastodon.fullname" . }}-assets claimName: {{ template "mastodon.pvc.assets" . }}
- name: system - name: system
persistentVolumeClaim: persistentVolumeClaim:
claimName: {{ template "mastodon.fullname" . }}-system claimName: {{ template "mastodon.pvc.system" . }}
{{- end }} {{- end }}
containers: containers:
- name: {{ .Chart.Name }}-web - name: {{ .Chart.Name }}-web

View File

@ -36,10 +36,10 @@ spec:
volumes: volumes:
- name: assets - name: assets
persistentVolumeClaim: persistentVolumeClaim:
claimName: {{ template "mastodon.fullname" . }}-assets claimName: {{ template "mastodon.pvc.assets" . }}
- name: system - name: system
persistentVolumeClaim: persistentVolumeClaim:
claimName: {{ template "mastodon.fullname" . }}-system claimName: {{ template "mastodon.pvc.system" . }}
{{- end }} {{- end }}
containers: containers:
- name: {{ include "mastodon.fullname" . }}-assets-precompile - name: {{ include "mastodon.fullname" . }}-assets-precompile

View File

@ -37,10 +37,10 @@ spec:
volumes: volumes:
- name: assets - name: assets
persistentVolumeClaim: persistentVolumeClaim:
claimName: {{ template "mastodon.fullname" . }}-assets claimName: {{ template "mastodon.pvc.assets" . }}
- name: system - name: system
persistentVolumeClaim: persistentVolumeClaim:
claimName: {{ template "mastodon.fullname" . }}-system claimName: {{ template "mastodon.pvc.system" . }}
{{- end }} {{- end }}
containers: containers:
- name: {{ include "mastodon.fullname" . }}-chewy-setup - name: {{ include "mastodon.fullname" . }}-chewy-setup

View File

@ -37,10 +37,10 @@ spec:
volumes: volumes:
- name: assets - name: assets
persistentVolumeClaim: persistentVolumeClaim:
claimName: {{ template "mastodon.fullname" . }}-assets claimName: {{ template "mastodon.pvc.assets" . }}
- name: system - name: system
persistentVolumeClaim: persistentVolumeClaim:
claimName: {{ template "mastodon.fullname" . }}-system claimName: {{ template "mastodon.pvc.system" . }}
{{- end }} {{- end }}
containers: containers:
- name: {{ include "mastodon.fullname" . }}-create-admin - name: {{ include "mastodon.fullname" . }}-create-admin

View File

@ -35,10 +35,10 @@ spec:
volumes: volumes:
- name: assets - name: assets
persistentVolumeClaim: persistentVolumeClaim:
claimName: {{ template "mastodon.fullname" . }}-assets claimName: {{ template "mastodon.pvc.assets" . }}
- name: system - name: system
persistentVolumeClaim: persistentVolumeClaim:
claimName: {{ template "mastodon.fullname" . }}-system claimName: {{ template "mastodon.pvc.system" . }}
{{- end }} {{- end }}
containers: containers:
- name: {{ include "mastodon.fullname" . }}-db-migrate - name: {{ include "mastodon.fullname" . }}-db-migrate

View File

@ -1,4 +1,4 @@
{{- if (not .Values.mastodon.s3.enabled) -}} {{- if and (not .Values.mastodon.s3.enabled) (not .Values.mastodon.persistence.assets.existingClaim) -}}
apiVersion: v1 apiVersion: v1
kind: PersistentVolumeClaim kind: PersistentVolumeClaim
metadata: metadata:

View File

@ -1,4 +1,4 @@
{{- if (not .Values.mastodon.s3.enabled) -}} {{- if and (not .Values.mastodon.s3.enabled) (not .Values.mastodon.persistence.system.existingClaim) -}}
apiVersion: v1 apiVersion: v1
kind: PersistentVolumeClaim kind: PersistentVolumeClaim
metadata: metadata:

View File

@ -54,11 +54,15 @@ mastodon:
resources: resources:
requests: requests:
storage: 10Gi storage: 10Gi
# -- name of existing persistent volume claim to use for assets
existingClaim:
system: system:
accessMode: ReadWriteOnce accessMode: ReadWriteOnce
resources: resources:
requests: requests:
storage: 100Gi storage: 100Gi
# -- name of existing persistent volume claim to use for system
existingClaim:
s3: s3:
enabled: false enabled: false
access_key: "" access_key: ""