Migrate paperless, teslamate, and mealie off the OOM-saturated minikube-indri node onto ringtail k3s, shedding ~1.1 GiB of resident load. Second chain in the indri-k8s decommission after immich. **Containers ported to Nix (default.nix), build-verified on ringtail:** - paperless → wraps nixpkgs paperless-ngx 2.20.15 (pinned unstable); runs as web/worker/beat/consumer - mealie → wraps nixpkgs mealie 3.16.0 (forward 4-minor bump, breaking-change reviewed); single gunicorn, SQLite - teslamate → from-scratch beamPackages mixRelease (not in nixpkgs); erlang_27+elixir_1_18, npm assets, ex_cldr locales pre-fetched **Data:** cold downtime-tolerant cutover. paperless+teslamate postgres dump/restore from quiesced source into a new ringtail blumeops-pg CNPG cluster; mealie SQLite PVC copied. Source DBs untouched until verified (rollback = repoint). **Also:** ringtail blumeops-pg cluster + ExternalSecrets scaffold; fixes pre-existing shower version-check drift. Runbook: docs/how-to/ringtail/migrate-wave1-ringtail.md. Deploy-from-branch + cutover happens before merge; container images rebuilt from main after merge. Reviewed-on: #363
28 lines
916 B
YAML
28 lines
916 B
YAML
# Paperless-ngx on ringtail k3s.
|
|
#
|
|
# Wave-1 indri-k8s decommission. Staging deployment; the minikube
|
|
# `paperless` app stays in parallel until cutover (drop the minikube
|
|
# tailscale ingress to free the name, then flip Caddy). See
|
|
# [[migrate-wave1-ringtail]].
|
|
#
|
|
# Prerequisites:
|
|
# - databases-ringtail blumeops-pg (paperless database + role)
|
|
# - external-secrets-ringtail (onepassword-blumeops ClusterSecretStore)
|
|
# - sifaka NFS rule granting ringtail access to /volume1/paperless
|
|
apiVersion: argoproj.io/v1alpha1
|
|
kind: Application
|
|
metadata:
|
|
name: paperless-ringtail
|
|
namespace: argocd
|
|
spec:
|
|
project: default
|
|
source:
|
|
repoURL: ssh://forgejo@forge.ops.eblu.me:2222/eblume/blumeops.git
|
|
targetRevision: main
|
|
path: argocd/manifests/paperless-ringtail
|
|
destination:
|
|
server: https://ringtail.tail8d86e.ts.net:6443
|
|
namespace: paperless
|
|
syncPolicy:
|
|
syncOptions:
|
|
- CreateNamespace=true
|