--- # tasks file for SOGo - name: Create SOGo namespace k8s: state: present definition: apiVersion: v1 kind: Namespace metadata: name: sogo - name: Create a deployment k8s: definition: apiVersion: v1 kind: Deployment metadata: name: sogo namespace: sogo spec: replicas: 1 selector: matchLabels: app: sogo template: metadata: labels: app: sogo spec: containers: - name: sogo image: mailcow/sogo volumeMounts: - name: mail mountPath: /var/mail ports: - containerPort: 80 env: - name: OVERRIDE_HOSTNAME value: "postfix.eom.dev" - name: POSTMASTER_ADDRESS value: "postfix@eom.dev" - name: ACCOUNT_PROVISIONER value: "LDAP" - name: LDAP_SERVER_HOST value: "ldap://openldap.openldap.svc.cluster.local/" - name: LDAP_SEARCH_BASE value: "dc=eom,dc=dev" - name: LDAP_BIND_DN value: "cn=readonly,dc=eom,dc=dev" - name: LDAP_BIND_PW value: "{{ openldap_readonly_password }}" - name: LDAP_QUERY_FILTER_DOMAIN value: "(mail=*@%s)" - name: LDAP_QUERY_FILTER_USER value: "(&(mail=%s)(memberOf=cn=Postfix Users,ou=Postfix,ou=Services,dc=eom,dc=dev))" - name: LDAP_QUERY_FILTER_ALIAS value: "(&(objectClass=posixAccount)(mailAlias=%s))" - name: LDAP_QUERY_FILTER_GROUP value: "(&(objectClass=posixAccount)(mailGroupMember=%s))" - name: LDAP_QUERY_FILTER_SENDERS value: "(&(objectClass=posixAccount)(|(mail=%s)(mailAlias=%s)(mailGroupMember=%s)))" volumes: - name: mail persistentVolumeClaim: claimName: mail - name: Expose deployment as a service k8s: definition: apiVersion: v1 kind: Service metadata: name: sogo namespace: sogo spec: selector: app: sogo ports: - port: 80 name: http type: LoadBalancer