Files @ a718023f9e76
Branch filter:

Location: majic-ansible-roles/roles/backup_server/molecule/default/tests/conftest.py

branko
MAR-181: Drop support for Debian 9 Stretch from the backup_client role:

- Provide more details on use of pexpect+sftp backed for
Duplicity (backend has to be used on Debian 10 Buster as well, not
just Debian 9 Stretch).
- Switch to using IPs from VirtualBox default allowed host-only
network subnets.
import os

import pytest


@pytest.fixture(scope='session')
def prepare_ssh_client_private_key_permissions():
    """
    Helper fixture used to fix the file permissions of client private
    keys that are used directly from the local machine to test
    connectivity towards the server.

    Permissions are set-up in such a way that the ssh tool does not
    report any errors (e.g. setting the mode to 0600).

    The fixture will restore old permissions once the tests have been
    completed.

    The fixture is used with the session scope.

    The following private keys will be processed:

    - tests/data/ssh/client1
    - tests/data/ssh/client2
    """

    private_keys = [
        "tests/data/ssh/client1",
        "tests/data/ssh/client2"
    ]

    private_key_old_permissions = {}

    for private_key in private_keys:
        private_key_old_permissions[private_key] = os.stat(private_key).st_mode
        os.chmod(private_key, 0o600)

    yield

    for private_key in private_keys:
        os.chmod(private_key, private_key_old_permissions[private_key])