Files
@ ceb51ff23ae3
Branch filter:
Location: majic-ansible-roles/roles/mail_server/molecule/default/tests/test_backup.py - annotation
ceb51ff23ae3
1.6 KiB
text/x-python
MAR-132: Added support to xmpp_server role for Debian 9 (Stretch):
- Updated tests to include Debian 9 in testing. Existing private keys
are reused where possible (since most of the naming is identical
between the machines with jessie/stretch).
- Updated invocation of sendxmpp in tests as workaround for
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=854210.
- Updated testing of imported keys to accomodate differences between
gpg/gpg2 (used by apt-key in Jessie/Stretch).
- Updated tests to include Debian 9 in testing. Existing private keys
are reused where possible (since most of the naming is identical
between the machines with jessie/stretch).
- Updated invocation of sendxmpp in tests as workaround for
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=854210.
- Updated testing of imported keys to accomodate differences between
gpg/gpg2 (used by apt-key in Jessie/Stretch).
b0c92677ba93 b0c92677ba93 b598cf22ae50 b598cf22ae50 b0c92677ba93 b598cf22ae50 b0c92677ba93 b598cf22ae50 b598cf22ae50 d7f5980cc68a b598cf22ae50 b598cf22ae50 b598cf22ae50 b598cf22ae50 b598cf22ae50 b598cf22ae50 d7f5980cc68a b598cf22ae50 d7f5980cc68a b598cf22ae50 b598cf22ae50 d7f5980cc68a b598cf22ae50 b598cf22ae50 b598cf22ae50 d7f5980cc68a b598cf22ae50 d7f5980cc68a b598cf22ae50 b598cf22ae50 d7f5980cc68a b598cf22ae50 b598cf22ae50 b598cf22ae50 b598cf22ae50 b598cf22ae50 b598cf22ae50 b598cf22ae50 b598cf22ae50 b598cf22ae50 d7f5980cc68a b598cf22ae50 b598cf22ae50 b598cf22ae50 b598cf22ae50 b598cf22ae50 | import os
import testinfra.utils.ansible_runner
testinfra_hosts = testinfra.utils.ansible_runner.AnsibleRunner(
os.environ['MOLECULE_INVENTORY_FILE']).get_hosts(['parameters-optional'])
def test_backup(host):
"""
Tests if mail directory is correctly backed-up.
"""
# Deliver two mails in order to make sure the directory structure is
# created.
send = host.run('swaks --suppress-data --to john.doe@domain1 --server localhost')
assert send.rc == 0
send = host.run('swaks --suppress-data --to jane.doe@domain2 --server localhost')
assert send.rc == 0
with host.sudo():
# Remove restore directory in order to make sure restore has worked
# correctly.
host.run("rm -rf /root/restore")
backup_run = host.run('duply main backup')
assert backup_run.rc == 0
restore_run = host.run('duply main restore /root/restore')
assert restore_run.rc == 0
for directory_path in ["/root/restore/var/virtmail/domain1",
"/root/restore/var/virtmail/domain1/john.doe",
"/root/restore/var/virtmail/domain1/john.doe/Maildir",
"/root/restore/var/virtmail/domain2",
"/root/restore/var/virtmail/domain2/jane.doe",
"/root/restore/var/virtmail/domain2/jane.doe/Maildir"]:
directory = host.file(directory_path)
assert directory.is_directory
assert directory.user == "virtmail"
assert directory.group == "virtmail"
assert directory.mode == 0o700
|