Files
@ 701044d4cbba
Branch filter:
Location: majic-ansible-roles/roles/ldap_server/tests/test_backup.py - annotation
701044d4cbba
1.6 KiB
text/x-python
MAR-31: Added scaffolding for testing xmpp_server role:
- Fixed wrong default for xmpp_domains parameter (should be a list).
- Added Molecule configuration file with LDAP server, client, and two XMPP
server instances.
- Added test playbook that sets-up all servers.
- Fixed mode syntax issues (use lead zero).
- Added data required for testing.
- Added dummy file with tests.
- Fixed wrong default for xmpp_domains parameter (should be a list).
- Added Molecule configuration file with LDAP server, client, and two XMPP
server instances.
- Added test playbook that sets-up all servers.
- Fixed mode syntax issues (use lead zero).
- Added data required for testing.
- Added dummy file with tests.
064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 064760bdc9d5 | import testinfra.utils.ansible_runner
testinfra_hosts = testinfra.utils.ansible_runner.AnsibleRunner(
'.molecule/ansible_inventory').get_hosts('parameters-optional')
def test_database_dump_directory(File, Sudo):
"""
Tests configuration of the directory where database dumps are stored prior
to running backup.
"""
with Sudo():
directory = File('/srv/backup')
assert directory.is_directory
assert directory.user == 'root'
assert directory.group == 'root'
assert directory.mode == 0o700
def test_database_dump_script(File, Sudo):
"""
Tests if database dump script is deployed correctly.
"""
with Sudo():
script = File('/etc/duply/main/pre.d/ldapdump.sh')
assert script.is_file
assert script.user == 'root'
assert script.group == 'root'
assert script.mode == 0o700
def test_backup(Command, File, Sudo):
"""
Tests if LDAP directory is correctly backed-up.
"""
with Sudo():
# Remove restore directory in order to make sure restore has worked
# correctly.
Command("rm -rf /root/restore")
backup_run = Command('duply main backup')
assert backup_run.rc == 0
database_dump = File('/srv/backup/slapd.bak')
assert database_dump.is_file
assert 'dn: dc=local' in database_dump.content
restore_run = Command('duply main restore /root/restore')
assert restore_run.rc == 0
restored_database_dump = File('/root/restore/srv/backup/slapd.bak')
assert restored_database_dump.is_file
assert restored_database_dump.content == database_dump.content
|