Create Helm subchart for OpenDKIM service with configuration and templates#320
Conversation
There was a problem hiding this comment.
Code Review
This pull request introduces a Helm chart architecture for the Silver mail platform, featuring an umbrella chart and a dedicated subchart for the OpenDKIM service. The implementation includes templates for standard Kubernetes resources such as StatefulSets, ConfigMaps, and NetworkPolicies, along with environment-specific value files for development and production. Feedback highlights the need to configure an fsGroup in the podSecurityContext to ensure the non-root container has write access to persistent volumes. Additionally, it is recommended to replace the static PVC with volumeClaimTemplates in the StatefulSet to correctly support scaling beyond a single replica.
|
I think we can remove the /silver folder later @Aravinda-HWK |
Yes agree, but blob storage and idp should not be in silver. In that case, there should be another two folders will come. |
…lates (LSFLK#320) * Create Helm subchart for OpenDKIM service with configuration and templates * Add detailed local testing instructions for OpenDKIM chart * Refactor OpenDKIM Helm chart: remove PVC template and adjust workload.yaml for persistence handling
…lates (LSFLK#320) * Create Helm subchart for OpenDKIM service with configuration and templates * Add detailed local testing instructions for OpenDKIM chart * Refactor OpenDKIM Helm chart: remove PVC template and adjust workload.yaml for persistence handling
📌 Description
This PR introduces a Helm subchart for the OpenDKIM service and establishes the initial umbrella chart structure for the email system deployment.
The OpenDKIM chart enables DKIM signing for configured domains, supports persistent storage for DKIM keys, and integrates with other email system components via Kubernetes services.
🔍 Changes Made
Created
opendkimHelm subchart undercharts/Implemented StatefulSet for OpenDKIM deployment with persistent DKIM key storage
Added Service for internal communication (milter port)
Created ConfigMaps for:
opendkim.confKeyTableSigningTableTrustedHostsAdded Secret support for sensitive configuration (
silver.yaml)Implemented PersistentVolumeClaim with support for:
Added Helm helper templates (
_helpers.tpl) for consistent naming and labelingImplemented readiness and liveness probes
Added Helm test hook to validate service connectivity
Introduced checksum annotations to trigger rolling updates on config changes
Initialized umbrella chart structure for future email system components
✅ Checklist (Email System)
🧪 Testing Instructions
Deploy the chart:
Verify pods are running:
Run Helm test:
helm test silver -n mailVerify OpenDKIM service connectivity:
(Optional) Check DKIM keys:
📷 Screenshots / Logs (if applicable)