Files
@ 14eb78a4f466
Branch filter:
Location: majic-ansible-roles/roles/xmpp_server/molecule/default/tests/test_backup.py - annotation
14eb78a4f466
1.9 KiB
text/x-python
MAR-129: Updated php_website role for Ansible 2.5.x and new Molecule:
- Include global linting configuration file in tests.
- Fixed linting issues.
- Fix deprecation warnings from Ansible (for apt module and
state=installed).
- Updated how the hosts are being referenced within tests.
- Include global linting configuration file in tests.
- Fixed linting issues.
- Fix deprecation warnings from Ansible (for apt module and
state=installed).
- Updated how the hosts are being referenced within tests.
da031f975c67 da031f975c67 da031f975c67 da031f975c67 e970d4afbea4 da031f975c67 da031f975c67 e970d4afbea4 da031f975c67 da031f975c67 da031f975c67 da031f975c67 da031f975c67 da031f975c67 e970d4afbea4 da031f975c67 da031f975c67 e970d4afbea4 da031f975c67 da031f975c67 e970d4afbea4 da031f975c67 da031f975c67 da031f975c67 e970d4afbea4 da031f975c67 e970d4afbea4 da031f975c67 da031f975c67 e970d4afbea4 da031f975c67 da031f975c67 da031f975c67 da031f975c67 da031f975c67 da031f975c67 da031f975c67 e970d4afbea4 da031f975c67 da031f975c67 da031f975c67 da031f975c67 da031f975c67 da031f975c67 da031f975c67 da031f975c67 da031f975c67 e970d4afbea4 da031f975c67 da031f975c67 da031f975c67 da031f975c67 da031f975c67 | import testinfra.utils.ansible_runner
testinfra_hosts = testinfra.utils.ansible_runner.AnsibleRunner(
'.molecule/ansible_inventory.yml').get_hosts('parameters-optional')
def test_backup(host):
"""
Tests if Prosody data directory is correctly backed-up.
"""
# Deliver a couple of messages in order to make sure the directory structure
# is created.
send = host.run("echo 'Hello' | sendxmpp -t -u jane.doe -p janepassword -j domain2:5222 jane.doe@domain2")
assert send.rc == 0
send = host.run("echo 'Hello' | sendxmpp -t -u mick.doe -p mickpassword -j domain3:5222 mick.doe@domain3")
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/lib/prosody/domain2",
"/root/restore/var/lib/prosody/domain2/offline",
"/root/restore/var/lib/prosody/domain3",
"/root/restore/var/lib/prosody/domain3/offline"]:
directory = host.file(directory_path)
assert directory.is_directory
assert directory.user == "prosody"
assert directory.group == "prosody"
assert directory.mode == 0o750
for file_path in ["/root/restore/var/lib/prosody/domain2/offline/jane%2edoe.list",
"/root/restore/var/lib/prosody/domain3/offline/mick%2edoe.list"]:
f = host.file(file_path)
assert f.is_file
assert f.user == 'prosody'
assert f.group == 'prosody'
assert f.mode == 0o640
|