Configuring Character Limits in glitch-soc

Environment: Kubernetes, Helm, glitch-soc v4.5.1

Problem

Default character limit: 500

Investigation

Checked glitch-soc documentation. Character limits are configurable via MAX_TOOT_CHARS environment variable.

Verified chart template handling:

$ grep -r "extraEnvVars" templates/
templates/configmap-env.yaml:  {{- range $k, $v := .Values.mastodon.extraEnvVars }}
templates/configmap-env.yaml:  {{ $k }}: {{ quote $v }}

Chart iterates over mastodon.extraEnvVars and renders into ConfigMap. Deployments load via envFrom.

Configuration

# values-river.yaml
mastodon:
  extraEnvVars:
    MAX_TOOT_CHARS: "42069"

Pre-deployment Verification

$ helm template river-mastodon . -f values-river.yaml | grep MAX_TOOT_CHARS
MAX_TOOT_CHARS: "42069"

Template renders correctly.

Deployment

$ helm upgrade river-mastodon . -n mastodon -f values-river.yaml
Release "river-mastodon" has been upgraded. Happy Helming!
REVISION: 167

$ kubectl rollout status deployment/river-mastodon-web -n mastodon
deployment "river-mastodon-web" successfully rolled out

$ kubectl rollout status deployment/river-mastodon-sidekiq-all-queues -n mastodon
deployment "river-mastodon-sidekiq-all-queues" successfully rolled out

$ kubectl rollout status deployment/river-mastodon-streaming -n mastodon
deployment "river-mastodon-streaming" successfully rolled out

Post-deployment Verification

$ kubectl exec -n mastodon deployment/river-mastodon-web -- env | grep MAX_TOOT_CHARS
MAX_TOOT_CHARS=42069

$ kubectl get pods -n mastodon | grep river-mastodon-web
river-mastodon-web-67586b449d-r5v2q   1/1   Running   0   32s

Result

Character limit: 500 → 42069 Downtime: 0s Issues: None

Notes for Other Admins

Works with standard Mastodon Helm chart. The extraEnvVars pattern:

  1. Add to values file
  2. Chart renders into ConfigMap
  3. Pods load via envFrom
  4. Rolling update applies change

No chart modifications needed.


Deployed on river.group.lt

Comment in the Fediverse @saint@river.group.lt