[WARNING]: Deprecation warnings can be disabled by setting `deprecation_warnings=False` in ansible.cfg. [DEPRECATION WARNING]: Importing 'to_bytes' from 'ansible.module_utils._text' is deprecated. This feature will be removed from ansible-core version 2.24. Use ansible.module_utils.common.text.converters instead. [DEPRECATION WARNING]: Importing 'to_text' from 'ansible.module_utils._text' is deprecated. This feature will be removed from ansible-core version 2.24. Use ansible.module_utils.common.text.converters instead. ansible-playbook [core 2.20.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.14/site-packages/ansible ansible collection location = /tmp/collections-xej executable location = /usr/local/bin/ansible-playbook python version = 3.14.3 (main, Mar 26 2026, 00:00:00) [GCC 15.2.1 20260123 (Red Hat 15.2.1-7)] (/usr/bin/python3.14) jinja version = 3.1.6 pyyaml version = 6.0.2 (with libyaml v0.2.5) No config file found; using defaults running playbook inside collection fedora.linux_system_roles 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_default.yml **************************************************** 3 plays in /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_default.yml PLAY [Backup configuration files] ********************************************** TASK [Gathering Facts] ********************************************************* task path: /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_default.yml:2 Monday 20 April 2026 04:25:51 -0400 (0:00:00.049) 0:00:00.049 ********** [WARNING]: Host 'managed-node3' is using the discovered Python interpreter at '/usr/bin/python3.14', but future installation of another Python interpreter could cause a different interpreter to be discovered. See https://docs.ansible.com/ansible-core/2.20/reference_appendices/interpreter_discovery.html for more information. ok: [managed-node3] TASK [Backup configuration files] ********************************************** task path: /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_default.yml:9 Monday 20 April 2026 04:25:52 -0400 (0:00:01.248) 0:00:01.298 ********** included: /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/backup.yml for managed-node3 TASK [Setup] ******************************************************************* task path: /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/backup.yml:2 Monday 20 April 2026 04:25:52 -0400 (0:00:00.019) 0:00:01.318 ********** included: /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/setup.yml for managed-node3 TASK [Ensure facts used by test] *********************************************** task path: /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/setup.yml:2 Monday 20 April 2026 04:25:52 -0400 (0:00:00.021) 0:00:01.339 ********** skipping: [managed-node3] => { "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-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/setup.yml:10 Monday 20 April 2026 04:25:52 -0400 (0:00:00.013) 0:00:01.352 ********** ok: [managed-node3] => { "changed": false, "stat": { "exists": false } } TASK [Set flag to indicate system is ostree] *********************************** task path: /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/setup.yml:15 Monday 20 April 2026 04:25:53 -0400 (0:00:00.598) 0:00:01.951 ********** ok: [managed-node3] => { "ansible_facts": { "__ssh_is_ostree": false }, "changed": false } TASK [Make sure openssh is installed before creating backup] ******************* task path: /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/setup.yml:19 Monday 20 April 2026 04:25:53 -0400 (0:00:00.088) 0:00:02.039 ********** ok: [managed-node3] => { "changed": false, "rc": 0, "results": [] } MSG: Nothing to do lsrpackages: openssh-clients TASK [Define common variables] ************************************************* task path: /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/setup.yml:31 Monday 20 April 2026 04:25:54 -0400 (0:00:01.740) 0:00:03.780 ********** ok: [managed-node3] => { "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-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/setup.yml:37 Monday 20 April 2026 04:25:54 -0400 (0:00:00.029) 0:00:03.810 ********** ok: [managed-node3] => { "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-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/backup.yml:5 Monday 20 April 2026 04:25:54 -0400 (0:00:00.046) 0:00:03.856 ********** ok: [managed-node3] => { "changed": false, "gid": 0, "group": "root", "mode": "0700", "owner": "root", "path": "/tmp/ansible.xkwdkhox", "secontext": "unconfined_u:object_r:user_tmp_t:s0", "size": 40, "state": "directory", "uid": 0 } TASK [Backup files] ************************************************************ task path: /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/backup.yml:13 Monday 20 April 2026 04:25:55 -0400 (0:00:00.618) 0:00:04.475 ********** ok: [managed-node3] => (item=/etc/ssh_config.d/00-ansible.conf) => { "ansible_loop_var": "item", "changed": false, "cmd": "if test -f /etc/ssh_config.d/00-ansible.conf; then\n mkdir -p /tmp/ansible.xkwdkhox/$(dirname /etc/ssh_config.d/00-ansible.conf);\n cp -a /etc/ssh_config.d/00-ansible.conf /tmp/ansible.xkwdkhox/$(dirname /etc/ssh_config.d/00-ansible.conf)\nfi\n", "delta": "0:00:00.003764", "end": "2026-04-20 04:25:56.159386", "item": "/etc/ssh_config.d/00-ansible.conf", "rc": 0, "start": "2026-04-20 04:25:56.155622" } ok: [managed-node3] => (item=/etc/ssh_config) => { "ansible_loop_var": "item", "changed": false, "cmd": "if test -f /etc/ssh_config; then\n mkdir -p /tmp/ansible.xkwdkhox/$(dirname /etc/ssh_config);\n cp -a /etc/ssh_config /tmp/ansible.xkwdkhox/$(dirname /etc/ssh_config)\nfi\n", "delta": "0:00:00.003754", "end": "2026-04-20 04:25:56.674388", "item": "/etc/ssh_config", "rc": 0, "start": "2026-04-20 04:25:56.670634" } PLAY [Ensure that the role runs with default parameters] *********************** TASK [Gathering Facts] ********************************************************* task path: /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_default.yml:12 Monday 20 April 2026 04:25:56 -0400 (0:00:01.235) 0:00:05.710 ********** ok: [managed-node3] TASK [Run role] **************************************************************** task path: /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_default.yml:15 Monday 20 April 2026 04:25:57 -0400 (0:00:00.979) 0:00:06.690 ********** included: /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/run_role_with_clear_facts.yml for managed-node3 TASK [Clear facts] ************************************************************* task path: /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/run_role_with_clear_facts.yml:9 Monday 20 April 2026 04:25:57 -0400 (0:00:00.052) 0:00:06.742 ********** META: facts cleared TASK [Run the role] ************************************************************ task path: /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/run_role_with_clear_facts.yml:23 Monday 20 April 2026 04:25:57 -0400 (0:00:00.001) 0:00:06.744 ********** skipping: [managed-node3] => { "changed": false, "false_condition": "__sr_failed_when is defined", "skip_reason": "Conditional result was False" } TASK [Run the role normally] *************************************************** task path: /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/run_role_with_clear_facts.yml:33 Monday 20 April 2026 04:25:57 -0400 (0:00:00.049) 0:00:06.793 ********** included: fedora.linux_system_roles.ssh for managed-node3 TASK [fedora.linux_system_roles.ssh : Set platform/version specific variables] *** task path: /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:2 Monday 20 April 2026 04:25:57 -0400 (0:00:00.099) 0:00:06.893 ********** included: /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml for managed-node3 TASK [fedora.linux_system_roles.ssh : Ensure ansible_facts used by role] ******* task path: /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:2 Monday 20 April 2026 04:25:58 -0400 (0:00:00.073) 0:00:06.967 ********** ok: [managed-node3] TASK [fedora.linux_system_roles.ssh : Check if system is ostree] *************** task path: /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:10 Monday 20 April 2026 04:25:58 -0400 (0:00:00.788) 0:00:07.756 ********** skipping: [managed-node3] => { "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-xej/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:15 Monday 20 April 2026 04:25:58 -0400 (0:00:00.050) 0:00:07.806 ********** skipping: [managed-node3] => { "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-xej/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:22 Monday 20 April 2026 04:25:58 -0400 (0:00:00.038) 0:00:07.844 ********** ok: [managed-node3] => { "changed": false, "stat": { "exists": false } } TASK [fedora.linux_system_roles.ssh : Set flag if transactional-update exists] *** task path: /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:27 Monday 20 April 2026 04:25:59 -0400 (0:00:00.485) 0:00:08.329 ********** ok: [managed-node3] => { "ansible_facts": { "__ssh_is_transactional": false }, "changed": false } TASK [fedora.linux_system_roles.ssh : Set platform/version specific variables] *** task path: /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:31 Monday 20 April 2026 04:25:59 -0400 (0:00:00.025) 0:00:08.355 ********** skipping: [managed-node3] => (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-node3] => (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-xej/ansible_collections/fedora/linux_system_roles/roles/ssh/vars/Fedora.yml" ], "ansible_loop_var": "item", "changed": false, "item": "Fedora.yml" } skipping: [managed-node3] => (item=Fedora_43.yml) => { "ansible_loop_var": "item", "changed": false, "false_condition": "__vars_file is file", "item": "Fedora_43.yml", "skip_reason": "Conditional result was False" } skipping: [managed-node3] => (item=Fedora_43.yml) => { "ansible_loop_var": "item", "changed": false, "false_condition": "__vars_file is file", "item": "Fedora_43.yml", "skip_reason": "Conditional result was False" } TASK [fedora.linux_system_roles.ssh : Ensure required packages are installed] *** task path: /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:5 Monday 20 April 2026 04:25:59 -0400 (0:00:00.043) 0:00:08.398 ********** ok: [managed-node3] => { "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-xej/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:17 Monday 20 April 2026 04:26:01 -0400 (0:00:02.107) 0:00:10.506 ********** skipping: [managed-node3] => { "false_condition": "__ssh_is_transactional | d(false)" } TASK [fedora.linux_system_roles.ssh : Reboot transactional update systems] ***** task path: /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:22 Monday 20 April 2026 04:26:01 -0400 (0:00:00.047) 0:00:10.553 ********** skipping: [managed-node3] => { "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-xej/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:27 Monday 20 April 2026 04:26:01 -0400 (0:00:00.044) 0:00:10.598 ********** skipping: [managed-node3] => { "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-xej/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:35 Monday 20 April 2026 04:26:01 -0400 (0:00:00.037) 0:00:10.636 ********** skipping: [managed-node3] => { "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-xej/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:42 Monday 20 April 2026 04:26:01 -0400 (0:00:00.026) 0:00:10.662 ********** skipping: [managed-node3] => { "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-xej/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:53 Monday 20 April 2026 04:26:01 -0400 (0:00:00.044) 0:00:10.706 ********** changed: [managed-node3] => { "changed": true, "checksum": "f7064ac5462aad2cda2efeaddcf48db84a38b68b", "dest": "/etc/ssh/ssh_config.d/00-ansible.conf", "gid": 0, "group": "root", "md5sum": "b9842f12c77db4e7cba397c9fdad4642", "mode": "0644", "owner": "root", "secontext": "system_u:object_r:etc_t:s0", "size": 41, "src": "/root/.ansible/tmp/ansible-tmp-1776673561.877481-7030-207214746217776/.source.conf", "state": "file", "uid": 0 } PLAY [Restore configuration files] ********************************************* TASK [Gathering Facts] ********************************************************* task path: /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_default.yml:20 Monday 20 April 2026 04:26:02 -0400 (0:00:01.208) 0:00:11.915 ********** ok: [managed-node3] TASK [Restore configuration files] ********************************************* task path: /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_default.yml:27 Monday 20 April 2026 04:26:03 -0400 (0:00:00.942) 0:00:12.857 ********** included: /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/restore.yml for managed-node3 TASK [Restore backed up files and remove what was not present] ***************** task path: /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/restore.yml:2 Monday 20 April 2026 04:26:03 -0400 (0:00:00.017) 0:00:12.875 ********** ok: [managed-node3] => (item=/etc/ssh_config.d/00-ansible.conf) => { "ansible_loop_var": "item", "changed": false, "cmd": "if test -f /tmp/ansible.xkwdkhox//etc/ssh_config.d/00-ansible.conf; then\n cp -a /tmp/ansible.xkwdkhox//etc/ssh_config.d/00-ansible.conf $(dirname /etc/ssh_config.d/00-ansible.conf)\nelif test -f /etc/ssh_config.d/00-ansible.conf; then\n rm /etc/ssh_config.d/00-ansible.conf\nfi\n", "delta": "0:00:00.004416", "end": "2026-04-20 04:26:04.359331", "item": "/etc/ssh_config.d/00-ansible.conf", "rc": 0, "start": "2026-04-20 04:26:04.354915" } ok: [managed-node3] => (item=/etc/ssh_config) => { "ansible_loop_var": "item", "changed": false, "cmd": "if test -f /tmp/ansible.xkwdkhox//etc/ssh_config; then\n cp -a /tmp/ansible.xkwdkhox//etc/ssh_config $(dirname /etc/ssh_config)\nelif test -f /etc/ssh_config; then\n rm /etc/ssh_config\nfi\n", "delta": "0:00:00.004265", "end": "2026-04-20 04:26:04.814807", "item": "/etc/ssh_config", "rc": 0, "start": "2026-04-20 04:26:04.810542" } TASK [Remove temporary directory for backup files] ***************************** task path: /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/restore.yml:15 Monday 20 April 2026 04:26:04 -0400 (0:00:00.963) 0:00:13.839 ********** ok: [managed-node3] => { "changed": false, "path": "/tmp/ansible.xkwdkhox", "state": "absent" } PLAY RECAP ********************************************************************* managed-node3 : ok=24 changed=1 unreachable=0 failed=0 skipped=9 rescued=0 ignored=0 SYSTEM ROLES ERRORS BEGIN v1 [] SYSTEM ROLES ERRORS END v1 TASKS RECAP ******************************************************************** Monday 20 April 2026 04:26:05 -0400 (0:00:00.590) 0:00:14.429 ********** =============================================================================== fedora.linux_system_roles.ssh : Ensure required packages are installed --- 2.11s /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:5 Make sure openssh is installed before creating backup ------------------- 1.74s /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/setup.yml:19 Gathering Facts --------------------------------------------------------- 1.25s /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_default.yml:2 Backup files ------------------------------------------------------------ 1.24s /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/backup.yml:13 fedora.linux_system_roles.ssh : Generate the configuration file --------- 1.21s /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:53 Gathering Facts --------------------------------------------------------- 0.98s /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_default.yml:12 Restore backed up files and remove what was not present ----------------- 0.96s /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/restore.yml:2 Gathering Facts --------------------------------------------------------- 0.94s /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_default.yml:20 fedora.linux_system_roles.ssh : Ensure ansible_facts used by role ------- 0.79s /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:2 Create a temporary directory for backup files --------------------------- 0.62s /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/backup.yml:5 Check if system is ostree ----------------------------------------------- 0.60s /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/setup.yml:10 Remove temporary directory for backup files ----------------------------- 0.59s /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/restore.yml:15 fedora.linux_system_roles.ssh : Check if transactional-update exists in /sbin --- 0.49s /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:22 Run the role normally --------------------------------------------------- 0.10s /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/run_role_with_clear_facts.yml:33 Set flag to indicate system is ostree ----------------------------------- 0.09s /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/setup.yml:15 fedora.linux_system_roles.ssh : Set platform/version specific variables --- 0.07s /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:2 Run role ---------------------------------------------------------------- 0.05s /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tests_default.yml:15 Run the role ------------------------------------------------------------ 0.05s /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/tests/ssh/tasks/run_role_with_clear_facts.yml:23 fedora.linux_system_roles.ssh : Check if system is ostree --------------- 0.05s /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/set_vars.yml:10 fedora.linux_system_roles.ssh : Notify user that reboot is needed to apply changes --- 0.05s /tmp/collections-xej/ansible_collections/fedora/linux_system_roles/roles/ssh/tasks/main.yml:17