ansible-playbook [core 2.17.4] config file = None configured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules'] ansible python module location = /usr/local/lib/python3.12/site-packages/ansible ansible collection location = /tmp/collections-XTV executable location = /usr/local/bin/ansible-playbook python version = 3.12.6 (main, Sep 9 2024, 00:00:00) [GCC 13.3.1 20240522 (Red Hat 13.3.1-1)] (/usr/bin/python3.12) jinja version = 3.1.4 libyaml = True No config file found; using defaults running playbook inside collection fedora.linux_system_roles redirecting (type: callback) ansible.builtin.debug to ansible.posix.debug redirecting (type: callback) ansible.builtin.debug to ansible.posix.debug redirecting (type: callback) ansible.builtin.profile_tasks to ansible.posix.profile_tasks Skipping callback 'default', as we already have a stdout callback. Skipping callback 'minimal', as we already have a stdout callback. Skipping callback 'oneline', as we already have a stdout callback. PLAYBOOK: tests_global_config_mode.yml ***************************************** 1 plays in /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_global_config_mode.yml PLAY [Test we can write global config with given permissions] ****************** TASK [Gathering Facts] ********************************************************* task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_global_config_mode.yml:2 Saturday 28 September 2024 17:17:34 -0400 (0:00:00.015) 0:00:00.016 **** [WARNING]: Platform linux on host managed-node2 is using the discovered Python interpreter at /usr/bin/python3.12, but future installation of another Python interpreter could change the meaning of that path. See https://docs.ansible.com/ansible- core/2.17/reference_appendices/interpreter_discovery.html for more information. ok: [managed-node2] TASK [Backup configuration files] ********************************************** task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_global_config_mode.yml:11 Saturday 28 September 2024 17:17:36 -0400 (0:00:01.500) 0:00:01.516 **** included: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/backup.yml for managed-node2 TASK [Setup] ******************************************************************* task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/backup.yml:2 Saturday 28 September 2024 17:17:36 -0400 (0:00:00.036) 0:00:01.552 **** included: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/setup.yml for managed-node2 TASK [Ensure facts used by test] *********************************************** task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/setup.yml:2 Saturday 28 September 2024 17:17:36 -0400 (0:00:00.038) 0:00:01.591 **** skipping: [managed-node2] => { "changed": false, "false_condition": "'os_family' not in ansible_facts", "skip_reason": "Conditional result was False" } TASK [Check if system is ostree] *********************************************** task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/setup.yml:10 Saturday 28 September 2024 17:17:36 -0400 (0:00:00.023) 0:00:01.615 **** ok: [managed-node2] => { "changed": false, "stat": { "exists": false } } TASK [Set flag to indicate system is ostree] *********************************** task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/setup.yml:15 Saturday 28 September 2024 17:17:36 -0400 (0:00:00.481) 0:00:02.096 **** ok: [managed-node2] => { "ansible_facts": { "__ssh_is_ostree": false }, "changed": false } TASK [Make sure openssh is installed before creating backup] ******************* task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/setup.yml:19 Saturday 28 September 2024 17:17:36 -0400 (0:00:00.027) 0:00:02.123 **** ok: [managed-node2] => { "changed": false, "rc": 0, "results": [] } MSG: Nothing to do lsrpackages: openssh-clients TASK [Define common variables] ************************************************* task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/setup.yml:31 Saturday 28 September 2024 17:17:38 -0400 (0:00:01.885) 0:00:04.009 **** ok: [managed-node2] => { "ansible_facts": { "main_ssh_config": "/etc/ssh/ssh_config", "main_ssh_config_name": "ssh_config", "main_ssh_config_path": "/etc/ssh/" }, "changed": false } TASK [Define specific variables] *********************************************** task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/setup.yml:37 Saturday 28 September 2024 17:17:38 -0400 (0:00:00.023) 0:00:04.032 **** ok: [managed-node2] => { "ansible_facts": { "main_ssh_config": "/etc/ssh/ssh_config.d/00-ansible.conf", "main_ssh_config_name": "00-ansible.conf", "main_ssh_config_path": "/etc/ssh/ssh_config.d/" }, "changed": false } TASK [Create a temporary directory for backup files] *************************** task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/backup.yml:5 Saturday 28 September 2024 17:17:38 -0400 (0:00:00.071) 0:00:04.104 **** ok: [managed-node2] => { "changed": false, "gid": 0, "group": "root", "mode": "0700", "owner": "root", "path": "/tmp/ansible.olpsrsgm", "secontext": "unconfined_u:object_r:user_tmp_t:s0", "size": 40, "state": "directory", "uid": 0 } TASK [Backup files] ************************************************************ task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/backup.yml:13 Saturday 28 September 2024 17:17:39 -0400 (0:00:00.769) 0:00:04.874 **** ok: [managed-node2] => (item=/etc/ssh/ssh_config.d/00-ansible.conf) => { "ansible_loop_var": "item", "changed": false, "cmd": "if test -f /etc/ssh/ssh_config.d/00-ansible.conf; then\n mkdir -p /tmp/ansible.olpsrsgm/$(dirname /etc/ssh/ssh_config.d/00-ansible.conf);\n cp -a /etc/ssh/ssh_config.d/00-ansible.conf /tmp/ansible.olpsrsgm/$(dirname /etc/ssh/ssh_config.d/00-ansible.conf)\nfi\n", "delta": "0:00:00.003588", "end": "2024-09-28 17:17:40.227800", "item": "/etc/ssh/ssh_config.d/00-ansible.conf", "rc": 0, "start": "2024-09-28 17:17:40.224212" } ok: [managed-node2] => (item=/etc/ssh/ssh_config) => { "ansible_loop_var": "item", "changed": false, "cmd": "if test -f /etc/ssh/ssh_config; then\n mkdir -p /tmp/ansible.olpsrsgm/$(dirname /etc/ssh/ssh_config);\n cp -a /etc/ssh/ssh_config /tmp/ansible.olpsrsgm/$(dirname /etc/ssh/ssh_config)\nfi\n", "delta": "0:00:00.009982", "end": "2024-09-28 17:17:40.618219", "item": "/etc/ssh/ssh_config", "rc": 0, "start": "2024-09-28 17:17:40.608237" } TASK [Run role] **************************************************************** task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_global_config_mode.yml:14 Saturday 28 September 2024 17:17:40 -0400 (0:00:01.211) 0:00:06.085 **** included: fedora.linux_system_roles.ssh for managed-node2 TASK [fedora.linux_system_roles.ssh : Set platform/version specific variables] *** task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:2 Saturday 28 September 2024 17:17:40 -0400 (0:00:00.037) 0:00:06.123 **** included: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml for managed-node2 TASK [fedora.linux_system_roles.ssh : Ensure ansible_facts used by role] ******* task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:2 Saturday 28 September 2024 17:17:40 -0400 (0:00:00.027) 0:00:06.150 **** skipping: [managed-node2] => { "changed": false, "false_condition": "__ssh_required_facts | difference(ansible_facts.keys() | list) | length > 0", "skip_reason": "Conditional result was False" } TASK [fedora.linux_system_roles.ssh : Check if system is ostree] *************** task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:10 Saturday 28 September 2024 17:17:40 -0400 (0:00:00.041) 0:00:06.192 **** skipping: [managed-node2] => { "changed": false, "false_condition": "not __ssh_is_ostree is defined", "skip_reason": "Conditional result was False" } TASK [fedora.linux_system_roles.ssh : Set flag to indicate system is ostree] *** task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:15 Saturday 28 September 2024 17:17:40 -0400 (0:00:00.022) 0:00:06.214 **** skipping: [managed-node2] => { "changed": false, "false_condition": "not __ssh_is_ostree is defined", "skip_reason": "Conditional result was False" } TASK [fedora.linux_system_roles.ssh : Check if transactional-update exists in /sbin] *** task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:22 Saturday 28 September 2024 17:17:40 -0400 (0:00:00.023) 0:00:06.238 **** ok: [managed-node2] => { "changed": false, "stat": { "exists": false } } TASK [fedora.linux_system_roles.ssh : Set flag if transactional-update exists] *** task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:27 Saturday 28 September 2024 17:17:41 -0400 (0:00:00.370) 0:00:06.609 **** ok: [managed-node2] => { "ansible_facts": { "__ssh_is_transactional": false }, "changed": false } TASK [fedora.linux_system_roles.ssh : Set platform/version specific variables] *** task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:31 Saturday 28 September 2024 17:17:41 -0400 (0:00:00.029) 0:00:06.638 **** skipping: [managed-node2] => (item=RedHat.yml) => { "ansible_loop_var": "item", "changed": false, "false_condition": "__vars_file is file", "item": "RedHat.yml", "skip_reason": "Conditional result was False" } ok: [managed-node2] => (item=Fedora.yml) => { "ansible_facts": { "__ssh_defaults": { "Include": "/etc/ssh/ssh_config.d/*.conf" }, "__ssh_drop_in_name": "00-ansible", "__ssh_supports_drop_in": true }, "ansible_included_var_files": [ "/tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/roles/ssh/vars/Fedora.yml" ], "ansible_loop_var": "item", "changed": false, "item": "Fedora.yml" } skipping: [managed-node2] => (item=Fedora_39.yml) => { "ansible_loop_var": "item", "changed": false, "false_condition": "__vars_file is file", "item": "Fedora_39.yml", "skip_reason": "Conditional result was False" } skipping: [managed-node2] => (item=Fedora_39.yml) => { "ansible_loop_var": "item", "changed": false, "false_condition": "__vars_file is file", "item": "Fedora_39.yml", "skip_reason": "Conditional result was False" } TASK [fedora.linux_system_roles.ssh : Ensure required packages are installed] *** task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:5 Saturday 28 September 2024 17:17:41 -0400 (0:00:00.047) 0:00:06.686 **** ok: [managed-node2] => { "changed": false, "rc": 0, "results": [] } MSG: Nothing to do lsrpackages: openssh openssh-clients TASK [fedora.linux_system_roles.ssh : Notify user that reboot is needed to apply changes] *** task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:17 Saturday 28 September 2024 17:17:43 -0400 (0:00:01.745) 0:00:08.432 **** skipping: [managed-node2] => { "false_condition": "__ssh_is_transactional | d(false)" } TASK [fedora.linux_system_roles.ssh : Reboot transactional update systems] ***** task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:22 Saturday 28 September 2024 17:17:43 -0400 (0:00:00.052) 0:00:08.484 **** skipping: [managed-node2] => { "changed": false, "false_condition": "__ssh_is_transactional | d(false)", "skip_reason": "Conditional result was False" } TASK [fedora.linux_system_roles.ssh : Fail if reboot is needed and not set] **** task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:27 Saturday 28 September 2024 17:17:43 -0400 (0:00:00.061) 0:00:08.546 **** skipping: [managed-node2] => { "changed": false, "false_condition": "__ssh_is_transactional | d(false)", "skip_reason": "Conditional result was False" } TASK [fedora.linux_system_roles.ssh : Gather information about the user for user configuration] *** task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:35 Saturday 28 September 2024 17:17:43 -0400 (0:00:00.060) 0:00:08.607 **** skipping: [managed-node2] => { "changed": false, "false_condition": "ssh_user is not none", "skip_reason": "Conditional result was False" } TASK [fedora.linux_system_roles.ssh : Make sure the ~/.ssh/ directory exists and has expected permissions] *** task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:42 Saturday 28 September 2024 17:17:43 -0400 (0:00:00.053) 0:00:08.661 **** skipping: [managed-node2] => { "changed": false, "false_condition": "ssh_user is not none", "skip_reason": "Conditional result was False" } TASK [fedora.linux_system_roles.ssh : Generate the configuration file] ********* task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:53 Saturday 28 September 2024 17:17:43 -0400 (0:00:00.047) 0:00:08.708 **** changed: [managed-node2] => { "changed": true, "checksum": "fd10e361130dbd3cf0286a2cc3bd7f14ae1d8b43", "dest": "/etc/ssh/ssh_config.d/00-ansible.conf", "gid": 2, "group": "daemon", "md5sum": "794672c8a072307a0e09ee8ae798b34c", "mode": "0600", "owner": "daemon", "secontext": "system_u:object_r:etc_t:s0", "size": 81, "src": "/root/.ansible/tmp/ansible-tmp-1727558263.3829858-5231-236127249439436/.source.conf", "state": "file", "uid": 2 } TASK [Download the global configuration file] ********************************** task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_global_config_mode.yml:28 Saturday 28 September 2024 17:17:44 -0400 (0:00:01.161) 0:00:09.869 **** ok: [managed-node2] => { "changed": false, "content": "IwojIEFuc2libGUgbWFuYWdlZAojCiMgc3lzdGVtX3JvbGU6c3NoCgpDb21wcmVzc2lvbiB5ZXMKR1NTQVBJQXV0aGVudGljYXRpb24gbm8K", "encoding": "base64", "source": "/etc/ssh/ssh_config.d/00-ansible.conf" } TASK [Stat the configuration file too] ***************************************** task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_global_config_mode.yml:33 Saturday 28 September 2024 17:17:44 -0400 (0:00:00.523) 0:00:10.393 **** ok: [managed-node2] => { "changed": false, "stat": { "atime": 1727558264.9049482, "attr_flags": "e", "attributes": [ "extents" ], "block_size": 4096, "blocks": 8, "charset": "us-ascii", "checksum": "fd10e361130dbd3cf0286a2cc3bd7f14ae1d8b43", "ctime": 1727558264.3969464, "dev": 51714, "device_type": 0, "executable": false, "exists": true, "gid": 2, "gr_name": "daemon", "inode": 280120, "isblk": false, "ischr": false, "isdir": false, "isfifo": false, "isgid": false, "islnk": false, "isreg": true, "issock": false, "isuid": false, "mimetype": "text/plain", "mode": "0600", "mtime": 1727558263.922945, "nlink": 1, "path": "/etc/ssh/ssh_config.d/00-ansible.conf", "pw_name": "daemon", "readable": true, "rgrp": false, "roth": false, "rusr": true, "size": 81, "uid": 2, "version": "2666845606", "wgrp": false, "woth": false, "writeable": true, "wusr": true, "xgrp": false, "xoth": false, "xusr": false } } TASK [Verify the options are in the file] ************************************** task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_global_config_mode.yml:38 Saturday 28 September 2024 17:17:45 -0400 (0:00:00.428) 0:00:10.822 **** ok: [managed-node2] => { "changed": false } MSG: All assertions passed TASK [Verify the file has expected permissions] ******************************** task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_global_config_mode.yml:44 Saturday 28 September 2024 17:17:45 -0400 (0:00:00.075) 0:00:10.897 **** ok: [managed-node2] => { "changed": false } MSG: All assertions passed TASK [Restore configuration files] ********************************************* task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_global_config_mode.yml:52 Saturday 28 September 2024 17:17:45 -0400 (0:00:00.040) 0:00:10.938 **** included: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/restore.yml for managed-node2 TASK [Restore backed up files and remove what was not present] ***************** task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/restore.yml:2 Saturday 28 September 2024 17:17:45 -0400 (0:00:00.037) 0:00:10.976 **** ok: [managed-node2] => (item=/etc/ssh/ssh_config.d/00-ansible.conf) => { "ansible_loop_var": "item", "changed": false, "cmd": "if test -f /tmp/ansible.olpsrsgm//etc/ssh/ssh_config.d/00-ansible.conf; then\n cp -a /tmp/ansible.olpsrsgm//etc/ssh/ssh_config.d/00-ansible.conf $(dirname /etc/ssh/ssh_config.d/00-ansible.conf)\nelif test -f /etc/ssh/ssh_config.d/00-ansible.conf; then\n rm /etc/ssh/ssh_config.d/00-ansible.conf\nfi\n", "delta": "0:00:00.004470", "end": "2024-09-28 17:17:45.930758", "item": "/etc/ssh/ssh_config.d/00-ansible.conf", "rc": 0, "start": "2024-09-28 17:17:45.926288" } ok: [managed-node2] => (item=/etc/ssh/ssh_config) => { "ansible_loop_var": "item", "changed": false, "cmd": "if test -f /tmp/ansible.olpsrsgm//etc/ssh/ssh_config; then\n cp -a /tmp/ansible.olpsrsgm//etc/ssh/ssh_config $(dirname /etc/ssh/ssh_config)\nelif test -f /etc/ssh/ssh_config; then\n rm /etc/ssh/ssh_config\nfi\n", "delta": "0:00:00.005917", "end": "2024-09-28 17:17:46.285107", "item": "/etc/ssh/ssh_config", "rc": 0, "start": "2024-09-28 17:17:46.279190" } TASK [Remove temporary directory for backup files] ***************************** task path: /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/restore.yml:15 Saturday 28 September 2024 17:17:46 -0400 (0:00:00.786) 0:00:11.762 **** ok: [managed-node2] => { "changed": false, "path": "/tmp/ansible.olpsrsgm", "state": "absent" } PLAY RECAP ********************************************************************* managed-node2 : ok=24 changed=1 unreachable=0 failed=0 skipped=9 rescued=0 ignored=0 Saturday 28 September 2024 17:17:47 -0400 (0:00:00.679) 0:00:12.442 **** =============================================================================== Make sure openssh is installed before creating backup ------------------- 1.89s /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/setup.yml:19 fedora.linux_system_roles.ssh : Ensure required packages are installed --- 1.75s /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:5 Gathering Facts --------------------------------------------------------- 1.50s /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_global_config_mode.yml:2 Backup files ------------------------------------------------------------ 1.21s /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/backup.yml:13 fedora.linux_system_roles.ssh : Generate the configuration file --------- 1.16s /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:53 Restore backed up files and remove what was not present ----------------- 0.79s /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/restore.yml:2 Create a temporary directory for backup files --------------------------- 0.77s /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/backup.yml:5 Remove temporary directory for backup files ----------------------------- 0.68s /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/restore.yml:15 Download the global configuration file ---------------------------------- 0.52s /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_global_config_mode.yml:28 Check if system is ostree ----------------------------------------------- 0.48s /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/setup.yml:10 Stat the configuration file too ----------------------------------------- 0.43s /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_global_config_mode.yml:33 fedora.linux_system_roles.ssh : Check if transactional-update exists in /sbin --- 0.37s /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:22 Verify the options are in the file -------------------------------------- 0.08s /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_global_config_mode.yml:38 Define specific variables ----------------------------------------------- 0.07s /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/setup.yml:37 fedora.linux_system_roles.ssh : Reboot transactional update systems ----- 0.06s /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:22 fedora.linux_system_roles.ssh : Fail if reboot is needed and not set ---- 0.06s /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:27 fedora.linux_system_roles.ssh : Gather information about the user for user configuration --- 0.05s /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:35 fedora.linux_system_roles.ssh : Notify user that reboot is needed to apply changes --- 0.05s /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:17 fedora.linux_system_roles.ssh : Set platform/version specific variables --- 0.05s /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:31 fedora.linux_system_roles.ssh : Make sure the ~/.ssh/ directory exists and has expected permissions --- 0.05s /tmp/collections-XTV/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:42