# Stalwart Mail Server Deployment This directory contains the complete deployment configuration for the Stalwart mail server on the basicstack.de cluster. ## Files Overview ### Deployment Manifests - `stalwart-deployment.yaml` - Basic deployment configuration - `stalwart-deployment-new.yaml` - Updated deployment variant - `stalwart-deployment-with-oidc.yaml` - Deployment with OIDC integration - `stalwart-deployment-oidc-only.yaml` - OIDC-only authentication deployment ### Helm Configuration - `stalwart-values.yaml` - Main Helm values file - `stalwart-values-fixed-ports.yaml` - Values with corrected port configurations - `stalwart-values-correct.yaml` - Verified correct values - `stalwart-helm-values-oidc.yaml` - Helm values for OIDC setup - `stalwart-helm-fix.yaml` - Helm chart fixes ### Configuration - `stalwart-oidc-config.yaml` - OIDC provider configuration - `stalwart-config-fix.yaml` - Configuration corrections - `stalwart-config-fix-v2.yaml` - Updated configuration fix ### Monitoring - `stalwart-monitoring.yaml` - Prometheus ServiceMonitor and metrics - `stalwart-dashboard-configmap.yaml` - Grafana dashboard configuration ### Maintenance - `stalwart-console-pod.yaml` - Debug/console pod for troubleshooting - `stalwart-service-patch.yaml` - Service configuration patch - `stalwart-statefulset-patch.yaml` - StatefulSet patches (v1, v2, v3) ### Documentation - `stalwart-backup-restore.md` - Backup and restore procedures - `stalwart-bootstrap-completion-guide.md` - Initial setup guide ## Deployment Notes This is a reference implementation showing the evolution of a production deployment. Multiple variants are preserved to show: - Different authentication strategies (local vs. OIDC) - Configuration iterations and fixes - Monitoring integration - Operational procedures When deploying a new service, you don't need this many files - choose the appropriate manifest for your use case and adapt it. ## Current Production Deployment Review the files to determine which manifest represents the current production state, or check the cluster directly with: ```bash kubectl get deployment,statefulset -n stalwart ```