[postfix] Migrate to lmdb

This change will migrate postfix from bdb to lmdb.
See infra/tickets#13035 for more
details.

Signed-off-by: Michal Konecny <mkonecny@redhat.com>
This commit is contained in:
Michal Konečný 2026-02-18 15:58:05 +01:00 committed by Michal Konečný
commit 5e9129cd00
21 changed files with 122 additions and 63 deletions

View file

@ -410,7 +410,7 @@ masquerade_exceptions = root apache
# "postfix reload" to eliminate the delay.
#
#alias_maps = dbm:/etc/aliases
alias_maps = hash:/etc/aliases
alias_maps = lmdb:/etc/aliases
#alias_maps = hash:/etc/aliases, nis:mail.aliases
#alias_maps = netinfo:/aliases
@ -421,7 +421,7 @@ alias_maps = hash:/etc/aliases
#
#alias_database = dbm:/etc/aliases
#alias_database = dbm:/etc/mail/aliases
alias_database = hash:/etc/aliases
alias_database = lmdb:/etc/aliases
#alias_database = hash:/etc/aliases, hash:/opt/majordomo/aliases
# ADDRESS EXTENSIONS (e.g., user+foo)

View file

@ -387,7 +387,7 @@ relayhost = bastion.fedoraproject.org
# "postfix reload" to eliminate the delay.
#
#alias_maps = dbm:/etc/aliases
alias_maps = hash:/etc/aliases
alias_maps = lmdb:/etc/aliases
#alias_maps = hash:/etc/aliases, nis:mail.aliases
#alias_maps = netinfo:/aliases
@ -398,7 +398,7 @@ alias_maps = hash:/etc/aliases
#
#alias_database = dbm:/etc/aliases
#alias_database = dbm:/etc/mail/aliases
alias_database = hash:/etc/aliases
alias_database = lmdb:/etc/aliases
#alias_database = hash:/etc/aliases, hash:/opt/majordomo/aliases
# ADDRESS EXTENSIONS (e.g., user+foo)

View file

@ -321,7 +321,7 @@ relayhost = smtp-auth-cc-rdu01.fedoraproject.org
smtp_use_tls = yes
smtp_sasl_auth_enable = yes
smtp_sasl_security_options =
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_password_maps = lmdb:/etc/postfix/sasl_passwd
# REJECTING UNKNOWN RELAY USERS
@ -394,7 +394,7 @@ smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
# "postfix reload" to eliminate the delay.
#
#alias_maps = dbm:/etc/aliases
alias_maps = hash:/etc/aliases
alias_maps = lmdb:/etc/aliases
#alias_maps = hash:/etc/aliases, nis:mail.aliases
#alias_maps = netinfo:/aliases
@ -405,7 +405,7 @@ alias_maps = hash:/etc/aliases
#
#alias_database = dbm:/etc/aliases
#alias_database = dbm:/etc/mail/aliases
alias_database = hash:/etc/aliases
alias_database = lmdb:/etc/aliases
#alias_database = hash:/etc/aliases, hash:/opt/majordomo/aliases
# ADDRESS EXTENSIONS (e.g., user+foo)

View file

@ -419,7 +419,7 @@ relay_domains = $mydestination
#
#alias_maps = dbm:/etc/aliases
#alias_maps = hash:/etc/aliases
alias_maps = hash:/etc/aliases, hash:/etc/postfix/package-owner, hash:/etc/postfix/package-maintainers
alias_maps = lmdb:/etc/aliases, lmdb:/etc/postfix/package-owner, lmdb:/etc/postfix/package-maintainers
#alias_maps = hash:/etc/aliases, nis:mail.aliases
#alias_maps = netinfo:/aliases
@ -430,7 +430,7 @@ alias_maps = hash:/etc/aliases, hash:/etc/postfix/package-owner, hash:/etc/postf
#
#alias_database = dbm:/etc/aliases
#alias_database = dbm:/etc/mail/aliases
alias_database = hash:/etc/aliases
alias_database = lmdb:/etc/aliases
#alias_database = hash:/etc/aliases, hash:/opt/majordomo/aliases
# ADDRESS EXTENSIONS (e.g., user+foo)
@ -726,7 +726,7 @@ smtpd_tls_loglevel = 1
smtpd_tls_CAfile = /etc/pki/tls/certs/ca-bundle.crt
smtpd_tls_chain_files = /etc/pki/tls/private/gateway-chain.pem
smtpd_tls_session_cache_timeout = 3600s
smtpd_tls_session_cache_database = btree:${queue_directory}/smtpd_scache
smtpd_tls_session_cache_database = lmdb:${queue_directory}/smtpd_scache
smtpd_tls_received_header = yes
smtpd_tls_ask_ccert = yes
smtpd_tls_received_header = yes
@ -736,7 +736,7 @@ smtpd_tls_eecdh_grade = ultra
# smtp TLS Client
smtp_tls_fingerprint_digest=sha1
smtp_tls_note_starttls_offer = yes
smtp_tls_policy_maps = hash:/etc/postfix/tls_policy
smtp_tls_policy_maps = lmdb:/etc/postfix/tls_policy
smtp_tls_mandatory_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1
smtp_tls_mandatory_ciphers = high
smtp_tls_mandatory_exclude_ciphers= aNULL, MD5, RC4
@ -747,9 +747,9 @@ smtp_tls_chain_files = /etc/pki/tls/private/gateway-chain.pem
smtp_tls_security_level = may
smtp_tls_connection_reuse = no
smtp_connection_cache_destinations = mx1.redhat.com,gmail.com,google.com,scrye.com,redhat.com
smtp_tls_session_cache_database = btree:/var/lib/postfix/smtp_scache
smtp_tls_session_cache_database = lmdb:/var/lib/postfix/smtp_scache
smtp_tls_session_cache_timeout = 3600s
smtp_tls_policy_maps = hash:/etc/postfix/tls_policy
smtp_tls_policy_maps = lmdb:/etc/postfix/tls_policy
## End smtp_tls
## General TLS
tls_random_source = dev:/dev/urandom
@ -766,7 +766,7 @@ non_smtpd_milters = $smtpd_milters
smtpd_sender_restrictions = regexp:/etc/postfix/sender_access
meta_directory = /etc/postfix
shlib_directory = /usr/lib64/postfix
transport_maps = hash:/etc/postfix/transport
transport_maps = lmdb:/etc/postfix/transport
local_header_rewrite_clients = static:all
message_size_limit = 20971520
@ -779,7 +779,7 @@ smtpd_relay_restrictions = permit_mynetworks, reject_unauth_destination
# here we send emails _from_ redhat.com addresses back out the redhat.com mx
# This avoids us sending them and causing SPF failures.
# It depends on them allowing us to relay email out.
sender_dependent_relayhost_maps = hash:/etc/postfix/bysender
sender_dependent_relayhost_maps = lmdb:/etc/postfix/bysender
# RHEL postfix disables RFC3030 CHUNKING by default for security reasons
# http://www.postfix.org/BDAT_README.html

View file

@ -386,7 +386,7 @@ masquerade_exceptions = root apache
# "postfix reload" to eliminate the delay.
#
#alias_maps = dbm:/etc/aliases
alias_maps = hash:/etc/aliases
alias_maps = lmdb:/etc/aliases
#alias_maps = hash:/etc/aliases, nis:mail.aliases
#alias_maps = netinfo:/aliases
@ -397,7 +397,7 @@ alias_maps = hash:/etc/aliases
#
#alias_database = dbm:/etc/aliases
#alias_database = dbm:/etc/mail/aliases
alias_database = hash:/etc/aliases
alias_database = lmdb:/etc/aliases
#alias_database = hash:/etc/aliases, hash:/opt/majordomo/aliases
# ADDRESS EXTENSIONS (e.g., user+foo)

View file

@ -388,7 +388,7 @@ masquerade_exceptions = root apache
# "postfix reload" to eliminate the delay.
#
#alias_maps = dbm:/etc/aliases
alias_maps = hash:/etc/aliases
alias_maps = lmdb:/etc/aliases
#alias_maps = hash:/etc/aliases, nis:mail.aliases
#alias_maps = netinfo:/aliases
@ -399,7 +399,7 @@ alias_maps = hash:/etc/aliases
#
#alias_database = dbm:/etc/aliases
#alias_database = dbm:/etc/mail/aliases
alias_database = hash:/etc/aliases
alias_database = lmdb:/etc/aliases
#alias_database = hash:/etc/aliases, hash:/opt/majordomo/aliases
# ADDRESS EXTENSIONS (e.g., user+foo)
@ -691,9 +691,9 @@ message_size_limit = 20971520
# Mailman, see MTA.rst
owner_request_special = no
transport_maps = hash:/var/lib/mailman3/data/postfix_lmtp
local_recipient_maps = hash:/var/lib/mailman3/data/postfix_lmtp
relay_domains = hash:/var/lib/mailman3/data/postfix_domains
transport_maps = lmdb:/var/lib/mailman3/data/postfix_lmtp
local_recipient_maps = lmdb:/var/lib/mailman3/data/postfix_lmtp
relay_domains = lmdb:/var/lib/mailman3/data/postfix_domains
smtpd_sender_restrictions =
check_sender_access regexp:/etc/postfix/sender_access

View file

@ -388,7 +388,7 @@ masquerade_exceptions = root apache
# "postfix reload" to eliminate the delay.
#
#alias_maps = dbm:/etc/aliases
alias_maps = hash:/etc/aliases
alias_maps = lmdb:/etc/aliases
#alias_maps = hash:/etc/aliases, nis:mail.aliases
#alias_maps = netinfo:/aliases
@ -399,7 +399,7 @@ alias_maps = hash:/etc/aliases
#
#alias_database = dbm:/etc/aliases
#alias_database = dbm:/etc/mail/aliases
alias_database = hash:/etc/aliases
alias_database = lmdb:/etc/aliases
#alias_database = hash:/etc/aliases, hash:/opt/majordomo/aliases
# ADDRESS EXTENSIONS (e.g., user+foo)
@ -691,8 +691,8 @@ message_size_limit = 20971520
# Mailman, see MTA.rst
owner_request_special = no
transport_maps = hash:/var/lib/mailman3/data/postfix_lmtp
local_recipient_maps = hash:/var/lib/mailman3/data/postfix_lmtp
relay_domains = hash:/var/lib/mailman3/data/postfix_domains
transport_maps = lmdb:/var/lib/mailman3/data/postfix_lmtp
local_recipient_maps = lmdb:/var/lib/mailman3/data/postfix_lmtp
relay_domains = lmdb:/var/lib/mailman3/data/postfix_domains
smtpd_recipient_restrictions = permit_mynetworks, reject_unauth_destination

View file

@ -395,7 +395,7 @@ unknown_local_recipient_reject_code = 550
# "postfix reload" to eliminate the delay.
#
#alias_maps = dbm:/etc/aliases
alias_maps = hash:/etc/aliases
alias_maps = lmdb:/etc/aliases
#alias_maps = hash:/etc/aliases, nis:mail.aliases
#alias_maps = netinfo:/aliases
@ -406,7 +406,7 @@ alias_maps = hash:/etc/aliases
#
#alias_database = dbm:/etc/aliases
#alias_database = dbm:/etc/mail/aliases
alias_database = hash:/etc/aliases
alias_database = lmdb:/etc/aliases
#alias_database = hash:/etc/aliases, hash:/opt/majordomo/aliases
# ADDRESS EXTENSIONS (e.g., user+foo)
@ -691,7 +691,7 @@ inet_protocols = ipv4
# mapping so we know where to go for .redhat.com mail
transport_maps = hash:/etc/postfix/transport
transport_maps = lmdb:/etc/postfix/transport
local_header_rewrite_clients = static:all

View file

@ -386,7 +386,7 @@ masquerade_exceptions = root apache
# "postfix reload" to eliminate the delay.
#
#alias_maps = dbm:/etc/aliases
alias_maps = hash:/etc/aliases
alias_maps = lmdb:/etc/aliases
#alias_maps = hash:/etc/aliases, nis:mail.aliases
#alias_maps = netinfo:/aliases
@ -397,7 +397,7 @@ alias_maps = hash:/etc/aliases
#
#alias_database = dbm:/etc/aliases
#alias_database = dbm:/etc/mail/aliases
alias_database = hash:/etc/aliases
alias_database = lmdb:/etc/aliases
#alias_database = hash:/etc/aliases, hash:/opt/majordomo/aliases
# ADDRESS EXTENSIONS (e.g., user+foo)

View file

@ -386,7 +386,7 @@ masquerade_exceptions = root apache
# "postfix reload" to eliminate the delay.
#
#alias_maps = dbm:/etc/aliases
alias_maps = hash:/etc/aliases
alias_maps = lmdb:/etc/aliases
#alias_maps = hash:/etc/aliases, nis:mail.aliases
#alias_maps = netinfo:/aliases
@ -397,7 +397,7 @@ alias_maps = hash:/etc/aliases
#
#alias_database = dbm:/etc/aliases
#alias_database = dbm:/etc/mail/aliases
alias_database = hash:/etc/aliases
alias_database = lmdb:/etc/aliases
#alias_database = hash:/etc/aliases, hash:/opt/majordomo/aliases
# ADDRESS EXTENSIONS (e.g., user+foo)

View file

@ -386,7 +386,7 @@ masquerade_exceptions = root apache
# "postfix reload" to eliminate the delay.
#
#alias_maps = dbm:/etc/aliases
alias_maps = hash:/etc/aliases
alias_maps = lmdb:/etc/aliases
#alias_maps = hash:/etc/aliases, nis:mail.aliases
#alias_maps = netinfo:/aliases
@ -397,7 +397,7 @@ alias_maps = hash:/etc/aliases
#
#alias_database = dbm:/etc/aliases
#alias_database = dbm:/etc/mail/aliases
alias_database = hash:/etc/aliases
alias_database = lmdb:/etc/aliases
#alias_database = hash:/etc/aliases, hash:/opt/majordomo/aliases
# ADDRESS EXTENSIONS (e.g., user+foo)

View file

@ -385,7 +385,7 @@ masquerade_exceptions = root apache
# "postfix reload" to eliminate the delay.
#
#alias_maps = dbm:/etc/aliases
alias_maps = hash:/etc/aliases
alias_maps = lmdb:/etc/aliases
#alias_maps = hash:/etc/aliases, nis:mail.aliases
#alias_maps = netinfo:/aliases
@ -396,7 +396,7 @@ alias_maps = hash:/etc/aliases
#
#alias_database = dbm:/etc/aliases
#alias_database = dbm:/etc/mail/aliases
alias_database = hash:/etc/aliases
alias_database = lmdb:/etc/aliases
#alias_database = hash:/etc/aliases, hash:/opt/majordomo/aliases
# ADDRESS EXTENSIONS (e.g., user+foo)

View file

@ -386,7 +386,7 @@ masquerade_exceptions = root apache
# "postfix reload" to eliminate the delay.
#
#alias_maps = dbm:/etc/aliases
alias_maps = hash:/etc/aliases
alias_maps = lmdb:/etc/aliases
#alias_maps = hash:/etc/aliases, nis:mail.aliases
#alias_maps = netinfo:/aliases
@ -397,7 +397,7 @@ alias_maps = hash:/etc/aliases
#
#alias_database = dbm:/etc/aliases
#alias_database = dbm:/etc/mail/aliases
alias_database = hash:/etc/aliases
alias_database = lmdb:/etc/aliases
#alias_database = hash:/etc/aliases, hash:/opt/majordomo/aliases
# ADDRESS EXTENSIONS (e.g., user+foo)

View file

@ -386,7 +386,7 @@ masquerade_exceptions = root apache
# "postfix reload" to eliminate the delay.
#
#alias_maps = dbm:/etc/aliases
alias_maps = hash:/etc/aliases
alias_maps = lmdb:/etc/aliases
#alias_maps = hash:/etc/aliases, nis:mail.aliases
#alias_maps = netinfo:/aliases
@ -397,7 +397,7 @@ alias_maps = hash:/etc/aliases
#
#alias_database = dbm:/etc/aliases
#alias_database = dbm:/etc/mail/aliases
alias_database = hash:/etc/aliases
alias_database = lmdb:/etc/aliases
#alias_database = hash:/etc/aliases, hash:/opt/majordomo/aliases
# ADDRESS EXTENSIONS (e.g., user+foo)

View file

@ -397,8 +397,8 @@ relayhost = [192.168.0.1]
# "postfix reload" to eliminate the delay.
#
#alias_maps = dbm:/etc/aliases
alias_maps = hash:/etc/aliases
alias_maps = hash:/etc/aliases
alias_maps = lmdb:/etc/aliases
alias_maps = lmdb:/etc/aliases
#alias_maps = hash:/etc/aliases, nis:mail.aliases
#alias_maps = netinfo:/aliases
@ -409,7 +409,7 @@ alias_maps = hash:/etc/aliases
#
#alias_database = dbm:/etc/aliases
#alias_database = dbm:/etc/mail/aliases
alias_database = hash:/etc/aliases
alias_database = lmdb:/etc/aliases
#alias_database = hash:/etc/aliases, hash:/opt/majordomo/aliases
# ADDRESS EXTENSIONS (e.g., user+foo)
@ -696,7 +696,7 @@ inet_protocols = all
# mapping so we know where to go for .redhat.com mail
transport_maps = hash:/etc/postfix/transport
transport_maps = lmdb:/etc/postfix/transport
message_size_limit = 20971520
@ -716,7 +716,7 @@ smtpd_tls_cert_file = /etc/pki/tls/certs/smtpd.crt
smtpd_tls_key_file = /etc/pki/tls/private/smtpd.key
smtpd_tls_CAfile = /etc/pki/tls/certs/ca.crt
smtpd_tls_session_cache_timeout = 3600s
smtpd_tls_session_cache_database = btree:${queue_directory}/smtpd_scache
smtpd_tls_session_cache_database = lmdb:${queue_directory}/smtpd_scache
smtpd_tls_received_header = yes
smtpd_tls_ask_ccert = yes
smtpd_tls_received_header = yes
@ -728,7 +728,7 @@ tls_eecdh_ultra_curve = secp384r1
#TLS Client
smtp_tls_fingerprint_digest=sha1
smtp_tls_note_starttls_offer = yes
smtp_tls_policy_maps = hash:/etc/postfix/tls_policy
smtp_tls_policy_maps = lmdb:/etc/postfix/tls_policy
smtp_tls_security_level = may
smtp_tls_mandatory_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1
smtp_tls_mandatory_ciphers = high

View file

@ -397,8 +397,8 @@ relayhost =
# "postfix reload" to eliminate the delay.
#
#alias_maps = dbm:/etc/aliases
alias_maps = hash:/etc/aliases
alias_maps = hash:/etc/aliases
alias_maps = lmdb:/etc/aliases
alias_maps = lmdb:/etc/aliases
#alias_maps = hash:/etc/aliases, nis:mail.aliases
#alias_maps = netinfo:/aliases
@ -409,7 +409,7 @@ alias_maps = hash:/etc/aliases
#
#alias_database = dbm:/etc/aliases
#alias_database = dbm:/etc/mail/aliases
alias_database = hash:/etc/aliases
alias_database = lmdb:/etc/aliases
#alias_database = hash:/etc/aliases, hash:/opt/majordomo/aliases
# ADDRESS EXTENSIONS (e.g., user+foo)
@ -696,7 +696,7 @@ inet_protocols = all
# mapping so we know where to go for .redhat.com mail
transport_maps = hash:/etc/postfix/transport
transport_maps = lmdb:/etc/postfix/transport
message_size_limit = 20971520
@ -728,7 +728,7 @@ tls_eecdh_ultra_curve = secp384r1
smtp_use_tls = yes
smtp_tls_fingerprint_digest=sha1
smtp_tls_note_starttls_offer = yes
smtp_tls_policy_maps = hash:/etc/postfix/tls_policy
smtp_tls_policy_maps = lmdb:/etc/postfix/tls_policy
smtp_tls_security_level = may
smtp_tls_mandatory_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1
smtp_tls_mandatory_ciphers = high

View file

@ -386,7 +386,7 @@ masquerade_exceptions = root apache
# "postfix reload" to eliminate the delay.
#
#alias_maps = dbm:/etc/aliases
alias_maps = hash:/etc/aliases
alias_maps = lmdb:/etc/aliases
#alias_maps = hash:/etc/aliases, nis:mail.aliases
#alias_maps = netinfo:/aliases
@ -397,7 +397,7 @@ alias_maps = hash:/etc/aliases
#
#alias_database = dbm:/etc/aliases
#alias_database = dbm:/etc/mail/aliases
alias_database = hash:/etc/aliases
alias_database = lmdb:/etc/aliases
#alias_database = hash:/etc/aliases, hash:/opt/majordomo/aliases
# ADDRESS EXTENSIONS (e.g., user+foo)

View file

@ -386,7 +386,7 @@ masquerade_exceptions = root apache
# "postfix reload" to eliminate the delay.
#
#alias_maps = dbm:/etc/aliases
alias_maps = hash:/etc/aliases
alias_maps = lmdb:/etc/aliases
#alias_maps = hash:/etc/aliases, nis:mail.aliases
#alias_maps = netinfo:/aliases
@ -397,7 +397,7 @@ alias_maps = hash:/etc/aliases
#
#alias_database = dbm:/etc/aliases
#alias_database = dbm:/etc/mail/aliases
alias_database = hash:/etc/aliases
alias_database = lmdb:/etc/aliases
#alias_database = hash:/etc/aliases, hash:/opt/majordomo/aliases
# ADDRESS EXTENSIONS (e.g., user+foo)

View file

@ -386,7 +386,7 @@ masquerade_exceptions = root apache
# "postfix reload" to eliminate the delay.
#
#alias_maps = dbm:/etc/aliases
alias_maps = hash:/etc/aliases
alias_maps = lmdb:/etc/aliases
#alias_maps = hash:/etc/aliases, nis:mail.aliases
#alias_maps = netinfo:/aliases
@ -397,7 +397,7 @@ alias_maps = hash:/etc/aliases
#
#alias_database = dbm:/etc/aliases
#alias_database = dbm:/etc/mail/aliases
alias_database = hash:/etc/aliases
alias_database = lmdb:/etc/aliases
#alias_database = hash:/etc/aliases, hash:/opt/majordomo/aliases
# ADDRESS EXTENSIONS (e.g., user+foo)
@ -711,7 +711,7 @@ smtpd_tls_eecdh_grade = ultra
# smtp TLS Client
smtp_tls_fingerprint_digest=sha1
smtp_tls_note_starttls_offer = yes
smtp_tls_policy_maps = hash:/etc/postfix/tls_policy
smtp_tls_policy_maps = lmdb:/etc/postfix/tls_policy
smtp_tls_mandatory_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1
smtp_tls_mandatory_ciphers = high
smtp_tls_mandatory_exclude_ciphers= aNULL, MD5, RC4

View file

@ -386,7 +386,7 @@ masquerade_exceptions = root apache
# "postfix reload" to eliminate the delay.
#
#alias_maps = dbm:/etc/aliases
alias_maps = hash:/etc/aliases
alias_maps = lmdb:/etc/aliases
#alias_maps = hash:/etc/aliases, nis:mail.aliases
#alias_maps = netinfo:/aliases
@ -397,7 +397,7 @@ alias_maps = hash:/etc/aliases
#
#alias_database = dbm:/etc/aliases
#alias_database = dbm:/etc/mail/aliases
alias_database = hash:/etc/aliases
alias_database = lmdb:/etc/aliases
#alias_database = hash:/etc/aliases, hash:/opt/majordomo/aliases
# ADDRESS EXTENSIONS (e.g., user+foo)
@ -711,7 +711,7 @@ smtpd_tls_eecdh_grade = ultra
# smtp TLS Client
smtp_tls_fingerprint_digest=sha1
smtp_tls_note_starttls_offer = yes
smtp_tls_policy_maps = hash:/etc/postfix/tls_policy
smtp_tls_policy_maps = lmdb:/etc/postfix/tls_policy
smtp_tls_mandatory_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1
smtp_tls_mandatory_ciphers = high
smtp_tls_mandatory_exclude_ciphers= aNULL, MD5, RC4

View file

@ -7,6 +7,14 @@
tags:
- postfix
- name: Make sure postfix-lmdb is installed
ansible.builtin.package:
state: presend
name: postfix-lmdb
tags:
- postfix
- base
- name: /etc/postfix/main.cf
ansible.builtin.copy:
src: "{{ item }}"
@ -28,6 +36,57 @@
- base
- smtp_auth_relay
- name: Read the config file
ansible.builtin.slurp:
src: /etc/postfix/main.cf
register: maincf_content
tags:
- postfix
- base
- name: Find all the lmdb files
set_fact:
lmdb_files: "{{ (maincf.content | b64decode) | regex_findall('lmdb:(.*)') }}"
tags:
- postfix
- base
- name: Convert /etc/alises to lmdb
ansible.builtin.command: "postalias lmdb:{{ item }}"
args:
creates: "{{ item }}"
when: "{{ item }} == /etc/aliases"
loop: "{{ lmdb_files }}"
register: result
failed_when: result.rc != 0
tags:
- postfix
- base
- name: Convert to lmdb
ansible.builtin.command: "postmap lmdb:{{ item }}"
args:
creates: "{{ item }}"
when: "{{ item }} != /etc/aliases"
loop: "{{ lmdb_files }}"
register: result
failed_when: result.rc != 0
tags:
- postfix
- base
- name: Enable SELinux for lmdb
ansible.posix.seboolean:
name: domain_can_mmap_files
state: true
persistent: true
notify:
- Restart postfix
tags:
- postfix
- base
- selinux
- name: Install /etc/postfix/master.cf file
ansible.builtin.copy:
src: "{{ item }}"