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-GqI executable location = /usr/local/bin/ansible-playbook python version = 3.12.12 (main, Oct 10 2025, 00:00:00) [GCC 14.3.1 20251022 (Red Hat 14.3.1-4)] (/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_custom_config.yml ********************************************** 1 plays in /tmp/collections-GqI/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_custom_config.yml PLAY [Test we can write any other configuration file] ************************** TASK [Gathering Facts] ********************************************************* task path: /tmp/collections-GqI/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_custom_config.yml:2 Wednesday 07 January 2026 21:56:13 -0500 (0:00:00.022) 0:00:00.022 ***** [WARNING]: Platform linux on host managed-node1 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-node1] TASK [Run role] **************************************************************** task path: /tmp/collections-GqI/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_custom_config.yml:5 Wednesday 07 January 2026 21:56:14 -0500 (0:00:01.418) 0:00:01.440 ***** included: fedora.linux_system_roles.ssh for managed-node1 TASK [fedora.linux_system_roles.ssh : Set platform/version specific variables] *** task path: /tmp/collections-GqI/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:2 Wednesday 07 January 2026 21:56:15 -0500 (0:00:00.125) 0:00:01.566 ***** included: /tmp/collections-GqI/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-GqI/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:2 Wednesday 07 January 2026 21:56:15 -0500 (0:00:00.067) 0:00:01.634 ***** skipping: [managed-node1] => { "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-GqI/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:10 Wednesday 07 January 2026 21:56:15 -0500 (0:00:00.095) 0:00:01.729 ***** ok: [managed-node1] => { "changed": false, "stat": { "exists": false } } TASK [fedora.linux_system_roles.ssh : Set flag to indicate system is ostree] *** task path: /tmp/collections-GqI/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:15 Wednesday 07 January 2026 21:56:15 -0500 (0:00:00.608) 0:00:02.338 ***** ok: [managed-node1] => { "ansible_facts": { "__ssh_is_ostree": false }, "changed": false } TASK [fedora.linux_system_roles.ssh : Check if transactional-update exists in /sbin] *** task path: /tmp/collections-GqI/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:22 Wednesday 07 January 2026 21:56:15 -0500 (0:00:00.038) 0:00:02.376 ***** ok: [managed-node1] => { "changed": false, "stat": { "exists": false } } TASK [fedora.linux_system_roles.ssh : Set flag if transactional-update exists] *** task path: /tmp/collections-GqI/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:27 Wednesday 07 January 2026 21:56:16 -0500 (0:00:00.413) 0:00:02.790 ***** 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-GqI/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:31 Wednesday 07 January 2026 21:56:16 -0500 (0:00:00.027) 0:00:02.818 ***** 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_10.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-GqI/ansible_collections/fedora/linux_system_roles/roles/ssh/vars/CentOS_10.yml" ], "ansible_loop_var": "item", "changed": false, "item": "CentOS_10.yml" } ok: [managed-node1] => (item=CentOS_10.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-GqI/ansible_collections/fedora/linux_system_roles/roles/ssh/vars/CentOS_10.yml" ], "ansible_loop_var": "item", "changed": false, "item": "CentOS_10.yml" } TASK [fedora.linux_system_roles.ssh : Ensure required packages are installed] *** task path: /tmp/collections-GqI/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:5 Wednesday 07 January 2026 21:56:16 -0500 (0:00:00.041) 0:00:02.859 ***** ok: [managed-node1] => { "changed": false, "rc": 0, "results": [] } MSG: Nothing to do TASK [fedora.linux_system_roles.ssh : Notify user that reboot is needed to apply changes] *** task path: /tmp/collections-GqI/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:17 Wednesday 07 January 2026 21:56:17 -0500 (0:00:00.961) 0:00:03.820 ***** skipping: [managed-node1] => { "false_condition": "__ssh_is_transactional | d(false)" } TASK [fedora.linux_system_roles.ssh : Reboot transactional update systems] ***** task path: /tmp/collections-GqI/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:22 Wednesday 07 January 2026 21:56:17 -0500 (0:00:00.033) 0:00:03.854 ***** 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-GqI/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:27 Wednesday 07 January 2026 21:56:17 -0500 (0:00:00.032) 0:00:03.886 ***** 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-GqI/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:35 Wednesday 07 January 2026 21:56:17 -0500 (0:00:00.033) 0:00:03.919 ***** 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-GqI/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:42 Wednesday 07 January 2026 21:56:17 -0500 (0:00:00.019) 0:00:03.939 ***** 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-GqI/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:53 Wednesday 07 January 2026 21:56:17 -0500 (0:00:00.019) 0:00:03.959 ***** changed: [managed-node1] => { "changed": true, "checksum": "fd10e361130dbd3cf0286a2cc3bd7f14ae1d8b43", "dest": "/tmp/ssh_config", "gid": 0, "group": "root", "md5sum": "794672c8a072307a0e09ee8ae798b34c", "mode": "0644", "owner": "root", "secontext": "unconfined_u:object_r:admin_home_t:s0", "size": 81, "src": "/root/.ansible/tmp/ansible-tmp-1767840977.4997585-60536-37418792992310/.source", "state": "file", "uid": 0 } TASK [Download the custom configuration file] ********************************** task path: /tmp/collections-GqI/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_custom_config.yml:17 Wednesday 07 January 2026 21:56:18 -0500 (0:00:01.236) 0:00:05.196 ***** ok: [managed-node1] => { "changed": false, "content": "IwojIEFuc2libGUgbWFuYWdlZAojCiMgc3lzdGVtX3JvbGU6c3NoCgpDb21wcmVzc2lvbiB5ZXMKR1NTQVBJQXV0aGVudGljYXRpb24gbm8K", "encoding": "base64", "source": "/tmp/ssh_config" } TASK [Verify the options are in the file] ************************************** task path: /tmp/collections-GqI/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_custom_config.yml:22 Wednesday 07 January 2026 21:56:19 -0500 (0:00:00.549) 0:00:05.745 ***** ok: [managed-node1] => { "changed": false } MSG: All assertions passed PLAY RECAP ********************************************************************* managed-node1 : ok=12 changed=1 unreachable=0 failed=0 skipped=6 rescued=0 ignored=0 SYSTEM ROLES ERRORS BEGIN v1 [] SYSTEM ROLES ERRORS END v1 TASKS RECAP ******************************************************************** Wednesday 07 January 2026 21:56:19 -0500 (0:00:00.074) 0:00:05.820 ***** =============================================================================== Gathering Facts --------------------------------------------------------- 1.42s /tmp/collections-GqI/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_custom_config.yml:2 fedora.linux_system_roles.ssh : Generate the configuration file --------- 1.24s /tmp/collections-GqI/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:53 fedora.linux_system_roles.ssh : Ensure required packages are installed --- 0.96s /tmp/collections-GqI/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:5 fedora.linux_system_roles.ssh : Check if system is ostree --------------- 0.61s /tmp/collections-GqI/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:10 Download the custom configuration file ---------------------------------- 0.55s /tmp/collections-GqI/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_custom_config.yml:17 fedora.linux_system_roles.ssh : Check if transactional-update exists in /sbin --- 0.41s /tmp/collections-GqI/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:22 Run role ---------------------------------------------------------------- 0.13s /tmp/collections-GqI/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_custom_config.yml:5 fedora.linux_system_roles.ssh : Ensure ansible_facts used by role ------- 0.10s /tmp/collections-GqI/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:2 Verify the options are in the file -------------------------------------- 0.07s /tmp/collections-GqI/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_custom_config.yml:22 fedora.linux_system_roles.ssh : Set platform/version specific variables --- 0.07s /tmp/collections-GqI/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:2 fedora.linux_system_roles.ssh : Set platform/version specific variables --- 0.04s /tmp/collections-GqI/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:31 fedora.linux_system_roles.ssh : Set flag to indicate system is ostree --- 0.04s /tmp/collections-GqI/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:15 fedora.linux_system_roles.ssh : Notify user that reboot is needed to apply changes --- 0.03s /tmp/collections-GqI/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:17 fedora.linux_system_roles.ssh : Fail if reboot is needed and not set ---- 0.03s /tmp/collections-GqI/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:27 fedora.linux_system_roles.ssh : Reboot transactional update systems ----- 0.03s /tmp/collections-GqI/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:22 fedora.linux_system_roles.ssh : Set flag if transactional-update exists --- 0.03s /tmp/collections-GqI/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:27 fedora.linux_system_roles.ssh : Make sure the ~/.ssh/ directory exists and has expected permissions --- 0.02s /tmp/collections-GqI/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:42 fedora.linux_system_roles.ssh : Gather information about the user for user configuration --- 0.02s /tmp/collections-GqI/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:35