--- # tasks file for mail - name: Create DMS namespace k8s: state: present definition: apiVersion: v1 kind: Namespace metadata: name: mail - name: Request a certificate for DMS k8s: state: present definition: apiVersion: cert-manager.io/v1 kind: Certificate metadata: name: mail namespace: mail spec: secretName: mail privateKey: algorithm: RSA encoding: PKCS1 size: 2048 duration: 2160h # 90d renewBefore: 360h # 15d isCA: false usages: - server auth - client auth subject: organizations: - EOM commonName: eom.dev dnsNames: - eom.dev - postfix.eom.dev - dovecot.eom.dev issuerRef: name: ca-issuer kind: ClusterIssuer - name: Create a persistent volume claim for mail k8s: state: present definition: apiVersion: v1 kind: PersistentVolumeClaim metadata: name: dkim namespace: mail spec: accessModes: - ReadWriteOnce resources: requests: storage: 512Mi - name: Create a persistent volume claim for mail k8s: state: present definition: apiVersion: v1 kind: PersistentVolumeClaim metadata: name: config namespace: mail spec: accessModes: - ReadWriteOnce resources: requests: storage: 2Gi - name: Create a persistent volume claim for mail k8s: state: present definition: apiVersion: v1 kind: PersistentVolumeClaim metadata: name: mail namespace: mail spec: accessModes: - ReadWriteOnce resources: requests: storage: 2Ti - name: Create a ConfigMap for encryption k8s: state: present definition: apiVersion: v1 kind: ConfigMap metadata: name: certs namespace: mail data: privkey.pem: "{{ mail_encryption_privkey }}" pubkey.pem: "{{ mail_encryption_pubkey }}" - name: Create a ConfigMap for Dovecot k8s: state: present definition: apiVersion: v1 kind: ConfigMap metadata: name: dovecot namespace: mail data: 10-encryption.conf: | # Enables mail_crypt for all services (pop3, pop3, etc) mail_plugins = $mail_plugins mail_crypt plugin { mail_crypt_global_private_key =