ansible-playbook [core 2.17.14] 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-DUC executable location = /usr/local/bin/ansible-playbook python version = 3.12.13 (main, Jul 20 2026, 00:00:00) [GCC 11.5.0 20240719 (Red Hat 11.5.0-14)] (/usr/bin/python3.12) jinja version = 3.1.6 libyaml = True No config file found; using defaults running playbook inside collection fedora.linux_system_roles Skipping callback 'debug', as we already have a stdout callback. Skipping callback 'json', as we already have a stdout callback. Skipping callback 'jsonl', as we already have a stdout callback. 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_indentation.yml ************************************************ 1 plays in /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_indentation.yml PLAY [Test indentation] ******************************************************** TASK [Gathering Facts] ********************************************************* task path: /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_indentation.yml:2 Saturday 22 August 2026 17:19:11 -0400 (0:00:00.028) 0:00:00.028 ******* [WARNING]: Platform linux on host managed-node1 is using the discovered Python interpreter at /usr/bin/python3.9, 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-node1] TASK [Backup configuration files] ********************************************** task path: /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_indentation.yml:7 Saturday 22 August 2026 17:19:13 -0400 (0:00:01.162) 0:00:01.190 ******* included: /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/backup.yml for managed-node1 TASK [Setup] ******************************************************************* task path: /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/backup.yml:2 Saturday 22 August 2026 17:19:13 -0400 (0:00:00.046) 0:00:01.237 ******* included: /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/setup.yml for managed-node1 TASK [Ensure facts used by test] *********************************************** task path: /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/setup.yml:2 Saturday 22 August 2026 17:19:13 -0400 (0:00:00.028) 0:00:01.266 ******* skipping: [managed-node1] => { "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-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/setup.yml:10 Saturday 22 August 2026 17:19:13 -0400 (0:00:00.018) 0:00:01.284 ******* ok: [managed-node1] => { "changed": false, "stat": { "exists": false } } TASK [Set flag to indicate system is ostree] *********************************** task path: /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/setup.yml:15 Saturday 22 August 2026 17:19:13 -0400 (0:00:00.612) 0:00:01.896 ******* ok: [managed-node1] => { "ansible_facts": { "__ssh_is_ostree": false }, "changed": false } TASK [Make sure openssh is installed before creating backup] ******************* task path: /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/setup.yml:19 Saturday 22 August 2026 17:19:13 -0400 (0:00:00.043) 0:00:01.939 ******* ok: [managed-node1] => { "changed": false, "rc": 0, "results": [] } MSG: Nothing to do lsrpackages: openssh-clients TASK [Define common variables] ************************************************* task path: /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/setup.yml:31 Saturday 22 August 2026 17:19:15 -0400 (0:00:01.198) 0:00:03.138 ******* ok: [managed-node1] => { "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-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/setup.yml:37 Saturday 22 August 2026 17:19:15 -0400 (0:00:00.012) 0:00:03.150 ******* ok: [managed-node1] => { "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-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/backup.yml:5 Saturday 22 August 2026 17:19:15 -0400 (0:00:00.034) 0:00:03.185 ******* ok: [managed-node1] => { "changed": false, "gid": 0, "group": "root", "mode": "0700", "owner": "root", "path": "/tmp/ansible.zfrzvhpi", "secontext": "unconfined_u:object_r:user_tmp_t:s0", "size": 6, "state": "directory", "uid": 0 } TASK [Backup files] ************************************************************ task path: /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/backup.yml:13 Saturday 22 August 2026 17:19:15 -0400 (0:00:00.529) 0:00:03.715 ******* skipping: [managed-node1] => { "changed": false, "skipped_reason": "No items in the list" } TASK [Run role] **************************************************************** task path: /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_indentation.yml:10 Saturday 22 August 2026 17:19:15 -0400 (0:00:00.061) 0:00:03.776 ******* included: /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/run_role_with_clear_facts.yml for managed-node1 TASK [Clear facts] ************************************************************* task path: /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/run_role_with_clear_facts.yml:9 Saturday 22 August 2026 17:19:15 -0400 (0:00:00.035) 0:00:03.811 ******* META: facts cleared TASK [Run the role] ************************************************************ task path: /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/run_role_with_clear_facts.yml:23 Saturday 22 August 2026 17:19:15 -0400 (0:00:00.001) 0:00:03.812 ******* skipping: [managed-node1] => { "changed": false, "false_condition": "__sr_failed_when is defined", "skip_reason": "Conditional result was False" } TASK [Run the role normally] *************************************************** task path: /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/run_role_with_clear_facts.yml:33 Saturday 22 August 2026 17:19:15 -0400 (0:00:00.025) 0:00:03.838 ******* included: fedora.linux_system_roles.ssh for managed-node1 TASK [fedora.linux_system_roles.ssh : Set platform/version specific variables] *** task path: /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:2 Saturday 22 August 2026 17:19:15 -0400 (0:00:00.102) 0:00:03.941 ******* included: /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml for managed-node1 TASK [fedora.linux_system_roles.ssh : Ensure ansible_facts used by role] ******* task path: /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:2 Saturday 22 August 2026 17:19:15 -0400 (0:00:00.030) 0:00:03.972 ******* ok: [managed-node1] TASK [fedora.linux_system_roles.ssh : Record role begin fingerprint] *********** task path: /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:7 Saturday 22 August 2026 17:19:16 -0400 (0:00:00.663) 0:00:04.635 ******* ok: [managed-node1] => { "changed": false, "fingerprint": { "ansible_check_mode": false, "ansible_version": "2.17.14", "date": "2026-08-22T17:19:16-04:00", "managed_node_distro": "CentOS-9", "play_hosts_number": 1, "role_name": "ssh", "role_path": "/tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/roles/ssh", "status": "begin" } } TASK [fedora.linux_system_roles.ssh : Check if system is ostree] *************** task path: /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:20 Saturday 22 August 2026 17:19:16 -0400 (0:00:00.444) 0:00:05.080 ******* skipping: [managed-node1] => { "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-DUC/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:25 Saturday 22 August 2026 17:19:16 -0400 (0:00:00.016) 0:00:05.096 ******* skipping: [managed-node1] => { "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-DUC/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:32 Saturday 22 August 2026 17:19:16 -0400 (0:00:00.015) 0:00:05.112 ******* ok: [managed-node1] => { "changed": false, "stat": { "exists": false } } TASK [fedora.linux_system_roles.ssh : Set flag if transactional-update exists] *** task path: /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:37 Saturday 22 August 2026 17:19:17 -0400 (0:00:00.353) 0:00:05.466 ******* ok: [managed-node1] => { "ansible_facts": { "__ssh_is_transactional": false }, "changed": false } TASK [fedora.linux_system_roles.ssh : Set platform/version specific variables] *** task path: /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:41 Saturday 22 August 2026 17:19:17 -0400 (0:00:00.041) 0:00:05.508 ******* skipping: [managed-node1] => (item=RedHat.yml) => { "ansible_loop_var": "item", "changed": false, "false_condition": "__vars_file is file", "item": "RedHat.yml", "skip_reason": "Conditional result was False" } skipping: [managed-node1] => (item=CentOS.yml) => { "ansible_loop_var": "item", "changed": false, "false_condition": "__vars_file is file", "item": "CentOS.yml", "skip_reason": "Conditional result was False" } ok: [managed-node1] => (item=CentOS_9.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-DUC/ansible_collections/fedora/linux_system_roles/roles/ssh/vars/CentOS_9.yml" ], "ansible_loop_var": "item", "changed": false, "item": "CentOS_9.yml" } ok: [managed-node1] => (item=CentOS_9.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-DUC/ansible_collections/fedora/linux_system_roles/roles/ssh/vars/CentOS_9.yml" ], "ansible_loop_var": "item", "changed": false, "item": "CentOS_9.yml" } TASK [fedora.linux_system_roles.ssh : Ensure required packages are installed] *** task path: /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:5 Saturday 22 August 2026 17:19:17 -0400 (0:00:00.067) 0:00:05.575 ******* ok: [managed-node1] => { "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-DUC/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:17 Saturday 22 August 2026 17:19:18 -0400 (0:00:01.399) 0:00:06.975 ******* skipping: [managed-node1] => { "false_condition": "__ssh_is_transactional | d(false)" } TASK [fedora.linux_system_roles.ssh : Reboot transactional update systems] ***** task path: /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:22 Saturday 22 August 2026 17:19:18 -0400 (0:00:00.019) 0:00:06.994 ******* skipping: [managed-node1] => { "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-DUC/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:27 Saturday 22 August 2026 17:19:18 -0400 (0:00:00.019) 0:00:07.014 ******* skipping: [managed-node1] => { "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-DUC/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:35 Saturday 22 August 2026 17:19:18 -0400 (0:00:00.020) 0:00:07.035 ******* skipping: [managed-node1] => { "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-DUC/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:42 Saturday 22 August 2026 17:19:18 -0400 (0:00:00.027) 0:00:07.063 ******* skipping: [managed-node1] => { "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-DUC/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:53 Saturday 22 August 2026 17:19:18 -0400 (0:00:00.027) 0:00:07.090 ******* changed: [managed-node1] => { "backup_file": "/tmp/ssh_config.19878.2026-08-22@17:19:20~", "changed": true, "checksum": "0977fc11f2c5e1e5aa055031a2cd8fdd3c7dfb61", "dest": "/tmp/ssh_config", "gid": 0, "group": "root", "md5sum": "81adf401f8f8b9f3684259ace53b8f43", "mode": "0644", "owner": "root", "secontext": "unconfined_u:object_r:admin_home_t:s0", "size": 306, "src": "/root/.ansible/tmp/ansible-tmp-1787433559.0391665-14087-267970356605755/.source", "state": "file", "uid": 0 } TASK [fedora.linux_system_roles.ssh : Record role success fingerprint] ********* task path: /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:69 Saturday 22 August 2026 17:19:20 -0400 (0:00:01.169) 0:00:08.259 ******* ok: [managed-node1] => { "changed": false, "fingerprint": { "ansible_check_mode": false, "ansible_version": "2.17.14", "date": "2026-08-22T17:19:20-04:00", "managed_node_distro": "CentOS-9", "play_hosts_number": 1, "role_name": "ssh", "role_path": "/tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/roles/ssh", "status": "success" } } TASK [Download the global configuration file] ********************************** task path: /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_indentation.yml:40 Saturday 22 August 2026 17:19:20 -0400 (0:00:00.374) 0:00:08.634 ******* ok: [managed-node1] => { "changed": false, "content": "IwojIEFuc2libGUgbWFuYWdlZAojCiMgc3lzdGVtX3JvbGU6c3NoCgpGb3J3YXJkWDExIG5vCk1hdGNoIGFsbAogIEdTU0FQSUF1dGhlbnRpY2F0aW9uIHllcwogIFNlbmRFbnYgdGVzdDFfMQogIFNlbmRFbnYgdGVzdDFfMgpNYXRjaCBleGVjIHRydWUKICBVc2VyIG5vYm9keQpIb3N0IGV4YW1wbGUKICBIb3N0bmFtZSBleGFtcGxlLmNvbQogIFNlbmRFbnYgdGVzdDJfMQogIFNlbmRFbnYgdGVzdDJfMgpIb3N0IGxvY2FsCiAgSG9zdG5hbWUgbG9jYWwuZXhhbXBsZS5jb20KICBTZW5kRW52IHRlc3QzXzEKICBTZW5kRW52IHRlc3QzXzIK", "encoding": "base64", "source": "/tmp/ssh_config" } TASK [Verify the options are in the file] ************************************** task path: /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_indentation.yml:45 Saturday 22 August 2026 17:19:21 -0400 (0:00:00.549) 0:00:09.183 ******* ok: [managed-node1] => { "changed": false } MSG: All assertions passed TASK [Restore configuration files] ********************************************* task path: /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_indentation.yml:66 Saturday 22 August 2026 17:19:21 -0400 (0:00:00.050) 0:00:09.233 ******* included: /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/restore.yml for managed-node1 TASK [Restore backed up files and remove what was not present] ***************** task path: /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/restore.yml:2 Saturday 22 August 2026 17:19:21 -0400 (0:00:00.015) 0:00:09.249 ******* skipping: [managed-node1] => { "changed": false, "skipped_reason": "No items in the list" } TASK [Remove temporary directory for backup files] ***************************** task path: /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/restore.yml:15 Saturday 22 August 2026 17:19:21 -0400 (0:00:00.010) 0:00:09.260 ******* ok: [managed-node1] => { "changed": false, "path": "/tmp/ansible.zfrzvhpi", "state": "absent" } PLAY RECAP ********************************************************************* managed-node1 : ok=24 changed=1 unreachable=0 failed=0 skipped=11 rescued=0 ignored=0 SYSTEM ROLES ERRORS BEGIN v1 [] SYSTEM ROLES ERRORS END v1 TASKS RECAP ******************************************************************** Saturday 22 August 2026 17:19:21 -0400 (0:00:00.472) 0:00:09.732 ******* =============================================================================== fedora.linux_system_roles.ssh : Ensure required packages are installed --- 1.40s /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:5 Make sure openssh is installed before creating backup ------------------- 1.20s /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/setup.yml:19 fedora.linux_system_roles.ssh : Generate the configuration file --------- 1.17s /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:53 Gathering Facts --------------------------------------------------------- 1.16s /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_indentation.yml:2 fedora.linux_system_roles.ssh : Ensure ansible_facts used by role ------- 0.66s /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:2 Check if system is ostree ----------------------------------------------- 0.61s /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/setup.yml:10 Download the global configuration file ---------------------------------- 0.55s /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_indentation.yml:40 Create a temporary directory for backup files --------------------------- 0.53s /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/backup.yml:5 Remove temporary directory for backup files ----------------------------- 0.47s /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/restore.yml:15 fedora.linux_system_roles.ssh : Record role begin fingerprint ----------- 0.44s /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:7 fedora.linux_system_roles.ssh : Record role success fingerprint --------- 0.37s /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:69 fedora.linux_system_roles.ssh : Check if transactional-update exists in /sbin --- 0.35s /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:32 Run the role normally --------------------------------------------------- 0.10s /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/run_role_with_clear_facts.yml:33 fedora.linux_system_roles.ssh : Set platform/version specific variables --- 0.07s /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:41 Backup files ------------------------------------------------------------ 0.06s /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/backup.yml:13 Verify the options are in the file -------------------------------------- 0.05s /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_indentation.yml:45 Backup configuration files ---------------------------------------------- 0.05s /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_indentation.yml:7 Set flag to indicate system is ostree ----------------------------------- 0.04s /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/setup.yml:15 fedora.linux_system_roles.ssh : Set flag if transactional-update exists --- 0.04s /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:37 Run role ---------------------------------------------------------------- 0.04s /tmp/collections-DUC/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_indentation.yml:10