# STDOUT: ---v---v---v---v---v--- Using /etc/ansible/ansible.cfg as config file PLAY [Test forced creation of the configuration snippet in drop in directory] *** TASK [Gathering Facts] ********************************************************* Thursday 11 August 2022 19:38:38 +0000 (0:00:00.019) 0:00:00.019 ******* ok: [sut] TASK [Backup configuration files] ********************************************** Thursday 11 August 2022 19:38:39 +0000 (0:00:01.061) 0:00:01.080 ******* included: /WORKDIR/dist-git-ssh-cast-value-to-string-in-jinja-4MxgHW/tests/tasks/backup.yml for sut TASK [Setup] ******************************************************************* Thursday 11 August 2022 19:38:39 +0000 (0:00:00.038) 0:00:01.118 ******* included: /WORKDIR/dist-git-ssh-cast-value-to-string-in-jinja-4MxgHW/tests/tasks/setup.yml for sut TASK [Ensure facts used by test] *********************************************** Thursday 11 August 2022 19:38:39 +0000 (0:00:00.038) 0:00:01.157 ******* skipping: [sut] => { "changed": false, "skip_reason": "Conditional result was False" } TASK [Make sure openssh is installed before creating backup] ******************* Thursday 11 August 2022 19:38:39 +0000 (0:00:00.031) 0:00:01.188 ******* ok: [sut] => { "changed": false, "rc": 0, "results": [] } MSG: Nothing to do TASK [Create a temporary directory for backup files] *************************** Thursday 11 August 2022 19:38:41 +0000 (0:00:02.055) 0:00:03.243 ******* ok: [sut] => { "changed": false, "gid": 0, "group": "root", "mode": "0700", "owner": "root", "path": "/tmp/ansible.mearf_p1", "secontext": "unconfined_u:object_r:user_tmp_t:s0", "size": 6, "state": "directory", "uid": 0 } TASK [Backup files] ************************************************************ Thursday 11 August 2022 19:38:41 +0000 (0:00:00.370) 0:00:03.613 ******* ok: [sut] => (item=/etc/ssh/ssh_config.d/99-last.conf) => { "ansible_loop_var": "item", "changed": false, "cmd": "if test -f /etc/ssh/ssh_config.d/99-last.conf; then\n mkdir -p /tmp/ansible.mearf_p1/$(dirname /etc/ssh/ssh_config.d/99-last.conf);\n cp /etc/ssh/ssh_config.d/99-last.conf /tmp/ansible.mearf_p1/$(dirname /etc/ssh/ssh_config.d/99-last.conf)\nfi\n", "delta": "0:00:00.004163", "end": "2022-08-11 19:38:42.085609", "item": "/etc/ssh/ssh_config.d/99-last.conf", "rc": 0, "start": "2022-08-11 19:38:42.081446" } ok: [sut] => (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.mearf_p1/$(dirname /etc/ssh/ssh_config);\n cp /etc/ssh/ssh_config /tmp/ansible.mearf_p1/$(dirname /etc/ssh/ssh_config)\nfi\n", "delta": "0:00:00.020501", "end": "2022-08-11 19:38:42.330167", "item": "/etc/ssh/ssh_config", "rc": 0, "start": "2022-08-11 19:38:42.309666" } PLAY [Run role] **************************************************************** TASK [Gathering Facts] ********************************************************* Thursday 11 August 2022 19:38:42 +0000 (0:00:00.676) 0:00:04.290 ******* ok: [sut] TASK [linux-system-roles.ssh : Set platform/version specific variables] ******** Thursday 11 August 2022 19:38:43 +0000 (0:00:00.761) 0:00:05.052 ******* included: /WORKDIR/dist-git-ssh-cast-value-to-string-in-jinja-4MxgHW/tests/roles/linux-system-roles.ssh/tasks/set_vars.yml for sut TASK [linux-system-roles.ssh : Ensure ansible_facts used by role] ************** Thursday 11 August 2022 19:38:43 +0000 (0:00:00.038) 0:00:05.091 ******* ok: [sut] TASK [linux-system-roles.ssh : Set platform/version specific variables] ******** Thursday 11 August 2022 19:38:43 +0000 (0:00:00.438) 0:00:05.529 ******* skipping: [sut] => (item=RedHat.yml) => { "ansible_loop_var": "item", "changed": false, "item": "RedHat.yml", "skip_reason": "Conditional result was False" } skipping: [sut] => (item=RedHat.yml) => { "ansible_loop_var": "item", "changed": false, "item": "RedHat.yml", "skip_reason": "Conditional result was False" } ok: [sut] => (item=RedHat_8.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": [ "/WORKDIR/dist-git-ssh-cast-value-to-string-in-jinja-4MxgHW/tests/roles/linux-system-roles.ssh/vars/RedHat_8.yml" ], "ansible_loop_var": "item", "changed": false, "item": "RedHat_8.yml" } skipping: [sut] => (item=RedHat_8.7.yml) => { "ansible_loop_var": "item", "changed": false, "item": "RedHat_8.7.yml", "skip_reason": "Conditional result was False" } TASK [linux-system-roles.ssh : Ensure required packages are installed] ********* Thursday 11 August 2022 19:38:43 +0000 (0:00:00.076) 0:00:05.606 ******* ok: [sut] => { "changed": false, "rc": 0, "results": [] } MSG: Nothing to do TASK [linux-system-roles.ssh : Gather information about the user for user configuration] *** Thursday 11 August 2022 19:38:45 +0000 (0:00:01.729) 0:00:07.335 ******* skipping: [sut] => { "changed": false, "skip_reason": "Conditional result was False" } TASK [linux-system-roles.ssh : Make sure the ~/.ssh/ directory exists and has expected permissions] *** Thursday 11 August 2022 19:38:45 +0000 (0:00:00.036) 0:00:07.372 ******* skipping: [sut] => { "changed": false, "skip_reason": "Conditional result was False" } TASK [linux-system-roles.ssh : Generate the configuration file] **************** Thursday 11 August 2022 19:38:45 +0000 (0:00:00.035) 0:00:07.408 ******* changed: [sut] => { "changed": true, "checksum": "33e5d453ffc19413f8e74630b334c90d4e22a1dd", "dest": "/etc/ssh/ssh_config.d/99-last.conf", "gid": 0, "group": "root", "md5sum": "df1b5553fea0fc8007bd9d80d983bbbe", "mode": "0644", "owner": "root", "secontext": "system_u:object_r:etc_t:s0", "size": 98, "src": "/root/.ansible/tmp/ansible-tmp-1660246725.6106603-6669-281183872143168/source", "state": "file", "uid": 0 } PLAY [all] ********************************************************************* TASK [Gathering Facts] ********************************************************* Thursday 11 August 2022 19:38:46 +0000 (0:00:01.309) 0:00:08.717 ******* ok: [sut] TASK [Skip if the system does not support drop in directory] ******************* Thursday 11 August 2022 19:38:47 +0000 (0:00:00.730) 0:00:09.448 ******* skipping: [sut] => { "skip_reason": "end_host conditional evaluated to False, continuing execution for sut" } MSG: end_host conditional evaluated to false, continuing execution for sut TASK [Download the included configuration file] ******************************** Thursday 11 August 2022 19:38:47 +0000 (0:00:00.042) 0:00:09.490 ******* ok: [sut] => { "changed": false, "content": "IwojIEFuc2libGUgbWFuYWdlZAojCkdTU0FQSUF1dGhlbnRpY2F0aW9uIG5vCkhvc3QgZXhhbXBsZQogIEhvc3RuYW1lIGV4YW1wbGUuY29tCiAgVXNlciBzb21lYm9keQo=", "encoding": "base64", "source": "/etc/ssh/ssh_config.d/99-last.conf" } TASK [Stat the configuration file too] ***************************************** Thursday 11 August 2022 19:38:47 +0000 (0:00:00.392) 0:00:09.883 ******* ok: [sut] => { "changed": false, "stat": { "atime": 1660246727.9535637, "attr_flags": "", "attributes": [], "block_size": 4096, "blocks": 8, "charset": "us-ascii", "checksum": "33e5d453ffc19413f8e74630b334c90d4e22a1dd", "ctime": 1660246726.7005553, "dev": 51715, "device_type": 0, "executable": false, "exists": true, "gid": 0, "gr_name": "root", "inode": 511705218, "isblk": false, "ischr": false, "isdir": false, "isfifo": false, "isgid": false, "islnk": false, "isreg": true, "issock": false, "isuid": false, "mimetype": "text/plain", "mode": "0644", "mtime": 1660246726.2285523, "nlink": 1, "path": "/etc/ssh/ssh_config.d/99-last.conf", "pw_name": "root", "readable": true, "rgrp": true, "roth": true, "rusr": true, "size": 98, "uid": 0, "version": "1013589280", "wgrp": false, "woth": false, "writeable": true, "wusr": true, "xgrp": false, "xoth": false, "xusr": false } } TASK [Verify the options are in the file] ************************************** Thursday 11 August 2022 19:38:48 +0000 (0:00:00.260) 0:00:10.143 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Download the main configuration file too] ******************************** Thursday 11 August 2022 19:38:48 +0000 (0:00:00.056) 0:00:10.200 ******* ok: [sut] => { "changed": false, "content": "IwkkT3BlbkJTRDogc3NoX2NvbmZpZyx2IDEuMzQgMjAxOS8wMi8wNCAwMjozOTo0MiBkdHVja2VyIEV4cCAkCgojIFRoaXMgaXMgdGhlIHNzaCBjbGllbnQgc3lzdGVtLXdpZGUgY29uZmlndXJhdGlvbiBmaWxlLiAgU2VlCiMgc3NoX2NvbmZpZyg1KSBmb3IgbW9yZSBpbmZvcm1hdGlvbi4gIFRoaXMgZmlsZSBwcm92aWRlcyBkZWZhdWx0cyBmb3IKIyB1c2VycywgYW5kIHRoZSB2YWx1ZXMgY2FuIGJlIGNoYW5nZWQgaW4gcGVyLXVzZXIgY29uZmlndXJhdGlvbiBmaWxlcwojIG9yIG9uIHRoZSBjb21tYW5kIGxpbmUuCgojIENvbmZpZ3VyYXRpb24gZGF0YSBpcyBwYXJzZWQgYXMgZm9sbG93czoKIyAgMS4gY29tbWFuZCBsaW5lIG9wdGlvbnMKIyAgMi4gdXNlci1zcGVjaWZpYyBmaWxlCiMgIDMuIHN5c3RlbS13aWRlIGZpbGUKIyBBbnkgY29uZmlndXJhdGlvbiB2YWx1ZSBpcyBvbmx5IGNoYW5nZWQgdGhlIGZpcnN0IHRpbWUgaXQgaXMgc2V0LgojIFRodXMsIGhvc3Qtc3BlY2lmaWMgZGVmaW5pdGlvbnMgc2hvdWxkIGJlIGF0IHRoZSBiZWdpbm5pbmcgb2YgdGhlCiMgY29uZmlndXJhdGlvbiBmaWxlLCBhbmQgZGVmYXVsdHMgYXQgdGhlIGVuZC4KCiMgU2l0ZS13aWRlIGRlZmF1bHRzIGZvciBzb21lIGNvbW1vbmx5IHVzZWQgb3B0aW9ucy4gIEZvciBhIGNvbXByZWhlbnNpdmUKIyBsaXN0IG9mIGF2YWlsYWJsZSBvcHRpb25zLCB0aGVpciBtZWFuaW5ncyBhbmQgZGVmYXVsdHMsIHBsZWFzZSBzZWUgdGhlCiMgc3NoX2NvbmZpZyg1KSBtYW4gcGFnZS4KCiMgSG9zdCAqCiMgICBGb3J3YXJkQWdlbnQgbm8KIyAgIEZvcndhcmRYMTEgbm8KIyAgIFBhc3N3b3JkQXV0aGVudGljYXRpb24geWVzCiMgICBIb3N0YmFzZWRBdXRoZW50aWNhdGlvbiBubwojICAgR1NTQVBJQXV0aGVudGljYXRpb24gbm8KIyAgIEdTU0FQSURlbGVnYXRlQ3JlZGVudGlhbHMgbm8KIyAgIEdTU0FQSUtleUV4Y2hhbmdlIG5vCiMgICBHU1NBUElUcnVzdEROUyBubwojICAgQmF0Y2hNb2RlIG5vCiMgICBDaGVja0hvc3RJUCB5ZXMKIyAgIEFkZHJlc3NGYW1pbHkgYW55CiMgICBDb25uZWN0VGltZW91dCAwCiMgICBTdHJpY3RIb3N0S2V5Q2hlY2tpbmcgYXNrCiMgICBJZGVudGl0eUZpbGUgfi8uc3NoL2lkX3JzYQojICAgSWRlbnRpdHlGaWxlIH4vLnNzaC9pZF9kc2EKIyAgIElkZW50aXR5RmlsZSB+Ly5zc2gvaWRfZWNkc2EKIyAgIElkZW50aXR5RmlsZSB+Ly5zc2gvaWRfZWQyNTUxOQojICAgUG9ydCAyMgojICAgQ2lwaGVycyBhZXMxMjgtY3RyLGFlczE5Mi1jdHIsYWVzMjU2LWN0cixhZXMxMjgtY2JjLDNkZXMtY2JjCiMgICBNQUNzIGhtYWMtbWQ1LGhtYWMtc2hhMSx1bWFjLTY0QG9wZW5zc2guY29tCiMgICBFc2NhcGVDaGFyIH4KIyAgIFR1bm5lbCBubwojICAgVHVubmVsRGV2aWNlIGFueTphbnkKIyAgIFBlcm1pdExvY2FsQ29tbWFuZCBubwojICAgVmlzdWFsSG9zdEtleSBubwojICAgUHJveHlDb21tYW5kIHNzaCAtcSAtVyAlaDolcCBnYXRld2F5LmV4YW1wbGUuY29tCiMgICBSZWtleUxpbWl0IDFHIDFoCiMKIyBUaGlzIHN5c3RlbSBpcyBmb2xsb3dpbmcgc3lzdGVtLXdpZGUgY3J5cHRvIHBvbGljeS4KIyBUbyBtb2RpZnkgdGhlIHN5c3RlbS13aWRlIHNzaCBjb25maWd1cmF0aW9uLCBjcmVhdGUgYSAgKi5jb25mICBmaWxlIHVuZGVyCiMgIC9ldGMvc3NoL3NzaF9jb25maWcuZC8gIHdoaWNoIHdpbGwgYmUgYXV0b21hdGljYWxseSBpbmNsdWRlZCBiZWxvdwpJbmNsdWRlIC9ldGMvc3NoL3NzaF9jb25maWcuZC8qLmNvbmYK", "encoding": "base64", "source": "/etc/ssh/ssh_config" } TASK [Verify the options are NOT in the global configuration file] ************* Thursday 11 August 2022 19:38:48 +0000 (0:00:00.265) 0:00:10.465 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify the file has default sensible permissions] ************************ Thursday 11 August 2022 19:38:48 +0000 (0:00:00.051) 0:00:10.517 ******* ok: [sut] => { "changed": false } MSG: All assertions passed PLAY [all] ********************************************************************* TASK [Gathering Facts] ********************************************************* Thursday 11 August 2022 19:38:48 +0000 (0:00:00.073) 0:00:10.591 ******* ok: [sut] TASK [Restore configuration files] ********************************************* Thursday 11 August 2022 19:38:49 +0000 (0:00:00.769) 0:00:11.360 ******* included: /WORKDIR/dist-git-ssh-cast-value-to-string-in-jinja-4MxgHW/tests/tasks/restore.yml for sut TASK [Restore backed up files and remove what was not present] ***************** Thursday 11 August 2022 19:38:49 +0000 (0:00:00.038) 0:00:11.398 ******* ok: [sut] => (item=/etc/ssh/ssh_config.d/99-last.conf) => { "ansible_loop_var": "item", "changed": false, "cmd": "if test -f /tmp/ansible.mearf_p1//etc/ssh/ssh_config.d/99-last.conf; then\n cp /tmp/ansible.mearf_p1//etc/ssh/ssh_config.d/99-last.conf $(dirname /etc/ssh/ssh_config.d/99-last.conf)\nelif test -f /etc/ssh/ssh_config.d/99-last.conf; then\n rm /etc/ssh/ssh_config.d/99-last.conf\nfi\n", "delta": "0:00:00.005414", "end": "2022-08-11 19:38:49.759279", "item": "/etc/ssh/ssh_config.d/99-last.conf", "rc": 0, "start": "2022-08-11 19:38:49.753865" } ok: [sut] => (item=/etc/ssh/ssh_config) => { "ansible_loop_var": "item", "changed": false, "cmd": "if test -f /tmp/ansible.mearf_p1//etc/ssh/ssh_config; then\n cp /tmp/ansible.mearf_p1//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.007614", "end": "2022-08-11 19:38:49.988375", "item": "/etc/ssh/ssh_config", "rc": 0, "start": "2022-08-11 19:38:49.980761" } TASK [Remove temporary directory for backup files] ***************************** Thursday 11 August 2022 19:38:50 +0000 (0:00:00.522) 0:00:11.921 ******* ok: [sut] => { "changed": false, "path": "/tmp/ansible.mearf_p1", "state": "absent" } PLAY RECAP ********************************************************************* sut : ok=23 changed=1 unreachable=0 failed=0 skipped=3 rescued=0 ignored=0 Thursday 11 August 2022 19:38:50 +0000 (0:00:00.479) 0:00:12.401 ******* =============================================================================== Make sure openssh is installed before creating backup ------------------- 2.06s linux-system-roles.ssh : Ensure required packages are installed --------- 1.73s linux-system-roles.ssh : Generate the configuration file ---------------- 1.31s Gathering Facts --------------------------------------------------------- 1.06s Gathering Facts --------------------------------------------------------- 0.77s Gathering Facts --------------------------------------------------------- 0.76s Gathering Facts --------------------------------------------------------- 0.73s Backup files ------------------------------------------------------------ 0.68s Restore backed up files and remove what was not present ----------------- 0.52s Remove temporary directory for backup files ----------------------------- 0.48s linux-system-roles.ssh : Ensure ansible_facts used by role -------------- 0.44s Download the included configuration file -------------------------------- 0.39s Create a temporary directory for backup files --------------------------- 0.37s Download the main configuration file too -------------------------------- 0.27s Stat the configuration file too ----------------------------------------- 0.26s linux-system-roles.ssh : Set platform/version specific variables -------- 0.08s Verify the file has default sensible permissions ------------------------ 0.07s Verify the options are in the file -------------------------------------- 0.06s Verify the options are NOT in the global configuration file ------------- 0.05s Skip if the system does not support drop in directory ------------------- 0.04s ---^---^---^---^---^--- # STDERR: ---v---v---v---v---v--- [DEPRECATION WARNING]: [defaults]callback_whitelist option, normalizing names to new standard, use callbacks_enabled instead. This feature will be removed from ansible-core in version 2.15. Deprecation warnings can be disabled by setting deprecation_warnings=False in ansible.cfg. ---^---^---^---^---^---