From 8d3d4e45e27f9b8d12fcc6139cbec959cfc3aedc Mon Sep 17 00:00:00 2001 From: Jesse Luehrs Date: Thu, 22 Jul 2021 20:03:12 -0400 Subject: use podman for mailu too --- manifests/mail.pp | 2 +- modules/docker/manifests/init.pp | 11 ----------- modules/mail/files/learn_spam | 12 ++++++------ modules/mail/files/mailu.service | 4 ++-- modules/mail/manifests/mailu.pp | 9 ++++++--- modules/podman/manifests/compose.pp | 19 +++++++++++++++++++ 6 files changed, 34 insertions(+), 23 deletions(-) delete mode 100644 modules/docker/manifests/init.pp create mode 100644 modules/podman/manifests/compose.pp diff --git a/manifests/mail.pp b/manifests/mail.pp index 15063cf..5a49456 100644 --- a/manifests/mail.pp +++ b/manifests/mail.pp @@ -5,7 +5,7 @@ node 'mail', 'mail.localdomain' { class { 'base': extra_script => " - (cd /media/persistent && sudo docker-compose pull -q) + (cd /media/persistent && sudo podman-compose pull -q) "; } diff --git a/modules/docker/manifests/init.pp b/modules/docker/manifests/init.pp deleted file mode 100644 index 6e24d17..0000000 --- a/modules/docker/manifests/init.pp +++ /dev/null @@ -1,11 +0,0 @@ -class docker { - package { "docker-compose": - ensure => installed; - } - - service { "docker": - ensure => running, - enable => true, - require => Package["docker-compose"]; - } -} diff --git a/modules/mail/files/learn_spam b/modules/mail/files/learn_spam index ccdc999..cc075f3 100644 --- a/modules/mail/files/learn_spam +++ b/modules/mail/files/learn_spam @@ -18,11 +18,11 @@ container_spam="${container_dir}/spam" find /media/persistent/mail -type f -mtime -30 | grep /cur/ | grep -v Sent | grep -v Junk | xargs -i ln {} "${dir}/ham" find /media/persistent/mail -type f -mtime -30 | grep /cur/ | grep -v Sent | grep Junk | xargs -i ln {} "${dir}/spam" -docker-compose exec imap rspamc -h antispam:11334 -P mailu learn_ham "$container_ham" > /dev/null || true -docker-compose exec imap rspamc -h antispam:11334 -P mailu learn_spam "$container_spam" > /dev/null || true +podman-compose exec imap rspamc -h antispam:11334 -P mailu learn_ham "$container_ham" >/dev/null || true +podman-compose exec imap rspamc -h antispam:11334 -P mailu learn_spam "$container_spam" >/dev/null || true -docker-compose exec imap rspamc -h antispam:11334 -P mailu -f 13 fuzzy_add "$container_ham" > /dev/null || true -docker-compose exec imap rspamc -h antispam:11334 -P mailu -f 11 fuzzy_del "$container_ham" > /dev/null || true +podman-compose exec imap rspamc -h antispam:11334 -P mailu -f 13 fuzzy_add "$container_ham" >/dev/null || true +podman-compose exec imap rspamc -h antispam:11334 -P mailu -f 11 fuzzy_del "$container_ham" >/dev/null || true -docker-compose exec imap rspamc -h antispam:11334 -P mailu -f 11 fuzzy_add "$container_spam" > /dev/null || true -docker-compose exec imap rspamc -h antispam:11334 -P mailu -f 13 fuzzy_del "$container_spam" > /dev/null || true +podman-compose exec imap rspamc -h antispam:11334 -P mailu -f 11 fuzzy_add "$container_spam" >/dev/null || true +podman-compose exec imap rspamc -h antispam:11334 -P mailu -f 13 fuzzy_del "$container_spam" >/dev/null || true diff --git a/modules/mail/files/mailu.service b/modules/mail/files/mailu.service index 14fdd93..dc33d91 100644 --- a/modules/mail/files/mailu.service +++ b/modules/mail/files/mailu.service @@ -3,8 +3,8 @@ Description = runs mailu After=network.target [Service] -ExecStart=/usr/bin/docker-compose up -ExecStop=/usr/bin/docker-compose down +ExecStart=/usr/bin/podman-compose up +ExecStop=/usr/bin/podman-compose down Restart=always WorkingDirectory=/media/persistent diff --git a/modules/mail/manifests/mailu.pp b/modules/mail/manifests/mailu.pp index 169b9d9..f15006c 100644 --- a/modules/mail/manifests/mailu.pp +++ b/modules/mail/manifests/mailu.pp @@ -1,6 +1,6 @@ class mail::mailu { include mail::persistent - include docker + include podman::compose package { "opendkim": ensure => installed; @@ -92,12 +92,15 @@ class mail::mailu { } exec { "compile sieve scripts": - command => "/usr/bin/docker-compose exec -T -u mail imap sievec /overrides/sieve/filters.sieve", + command => "/usr/bin/podman-compose exec -T -u mail imap sievec /overrides/sieve/filters.sieve", cwd => "/media/persistent", refreshonly => true, tries => 12, try_sleep => 15, - require => Service["mailu"]; + require => [ + Package::Makepkg['podman-compose-git'], + Service["mailu"], + ]; } systemd::service { "mailu": diff --git a/modules/podman/manifests/compose.pp b/modules/podman/manifests/compose.pp new file mode 100644 index 0000000..56eeeef --- /dev/null +++ b/modules/podman/manifests/compose.pp @@ -0,0 +1,19 @@ +class podman::compose { + include git + include podman + + package { ['python-yaml', 'python-setuptools']: + ensure => installed, + install_options => ["--asdeps"]; + } + + package::makepkg { 'podman-compose-git': + ensure => installed, + require => [ + Package["podman"], + Package["python-yaml"], + Package["git"], + Package["python-setuptools"], + ]; + } +} -- cgit v1.2.3