ansible.posix icon indicating copy to clipboard operation
ansible.posix copied to clipboard

Synchronize module throws '[Errno 2] No such file or directory' when using password authentication

Open lucas-benedito opened this issue 3 years ago • 9 comments

SUMMARY

In Ansible 2.9.11 running on rhel 8, synchronize module fails to transfer with '[Errno 2] No such file or directory' in similar fashion as in #56629. All suggestions from the previous issue were followed and i was unable to solve it. The only way to avoid the issue is to use ssh-key based connection as it doesn't use sshpass.

ISSUE TYPE
  • Bug Report
COMPONENT NAME

synchronize

ANSIBLE VERSION
ansible 2.9.11
  config file = /etc/ansible/ansible.cfg
  configured module search path = ['/home/ansible/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python3.6/site-packages/ansible
  executable location = /usr/bin/ansible
  python version = 3.6.8 (default, Dec  5 2019, 15:45:45) [GCC 8.3.1 20191121 (Red Hat 8.3.1-5)]
OS / ENVIRONMENT

Red Hat Enterprise Linux release 8.2 (Ootpa)

STEPS TO REPRODUCE

freshly installed RHEL 8 environment without any customization. mkdir /tmp/testdir ; echo 'Ansible Managed' >> /tmp/testdir/file-transfer

---
- name: Sync between servers
  hosts: all
  tasks:
  - name: Transfering from between servers using delegate
    synchronize:
      src: /tmp/testdir
      dest: /tmp
    delegate_to: source_server
EXPECTED RESULTS
$ ansible-playbook sync.yml -i inventory
PLAY [Sync between servers] ******************************************************************************************************************************************************************************************************************

TASK [Gathering Facts] ***********************************************************************************************************************************************************************************************************************
ok: [ec2-3-249-227-122.eu-west-1.compute.amazonaws.com]

TASK [Transfering from between servers using delegate] ***************************************************************************************************************************************************************************************
changed: [ec2-3-249-227-122.eu-west-1.compute.amazonaws.com -> ec2-3-249-85-67.eu-west-1.compute.amazonaws.com]

PLAY RECAP ***********************************************************************************************************************************************************************************************************************************
ec2-3-249-227-122.eu-west-1.compute.amazonaws.com : ok=2    changed=1    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0
$
ACTUAL RESULTS
$ ansible-playbook sync.yml -i inventory -u ansible -k -vvv
ansible-playbook 2.9.11
  config file = /etc/ansible/ansible.cfg
  configured module search path = ['/home/ansible/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python3.6/site-packages/ansible
  executable location = /usr/bin/ansible-playbook
  python version = 3.6.8 (default, Dec  5 2019, 15:45:45) [GCC 8.3.1 20191121 (Red Hat 8.3.1-5)]
Using /etc/ansible/ansible.cfg as config file
SSH password: 
host_list declined parsing /home/ansible/inventory as it did not pass its verify_file() method
script declined parsing /home/ansible/inventory as it did not pass its verify_file() method
auto declined parsing /home/ansible/inventory as it did not pass its verify_file() method
Parsed /home/ansible/inventory inventory source with ini plugin

PLAYBOOK: sync.yml ***************************************************************************************************************************************************************************************************************************
1 plays in sync.yml

PLAY [Sync between servers] ******************************************************************************************************************************************************************************************************************

TASK [Gathering Facts] ***********************************************************************************************************************************************************************************************************************
task path: /home/ansible/sync.yml:2
<ec2-3-249-227-122.eu-west-1.compute.amazonaws.com> ESTABLISH SSH CONNECTION FOR USER: ansible
<ec2-3-249-227-122.eu-west-1.compute.amazonaws.com> SSH: EXEC sshpass -d9 ssh -C -o ControlMaster=auto -o ControlPersist=60s -o 'User="ansible"' -o ConnectTimeout=10 -o ControlPath=/home/ansible/.ansible/cp/ce7441570e ec2-3-249-227-122.eu-west-1.compute.amazonaws.com '/bin/sh -c '"'"'echo ~ansible && sleep 0'"'"''
<ec2-3-249-227-122.eu-west-1.compute.amazonaws.com> (0, b'/home/ansible\n', b'')
<ec2-3-249-227-122.eu-west-1.compute.amazonaws.com> ESTABLISH SSH CONNECTION FOR USER: ansible
<ec2-3-249-227-122.eu-west-1.compute.amazonaws.com> SSH: EXEC sshpass -d9 ssh -C -o ControlMaster=auto -o ControlPersist=60s -o 'User="ansible"' -o ConnectTimeout=10 -o ControlPath=/home/ansible/.ansible/cp/ce7441570e ec2-3-249-227-122.eu-west-1.compute.amazonaws.com '/bin/sh -c '"'"'( umask 77 && mkdir -p "` echo /home/ansible/.ansible/tmp `"&& mkdir /home/ansible/.ansible/tmp/ansible-tmp-1598346765.0777154-5325-64035331839151 && echo ansible-tmp-1598346765.0777154-5325-64035331839151="` echo /home/ansible/.ansible/tmp/ansible-tmp-1598346765.0777154-5325-64035331839151 `" ) && sleep 0'"'"''
<ec2-3-249-227-122.eu-west-1.compute.amazonaws.com> (0, b'ansible-tmp-1598346765.0777154-5325-64035331839151=/home/ansible/.ansible/tmp/ansible-tmp-1598346765.0777154-5325-64035331839151\n', b'')
<ec2-3-249-227-122.eu-west-1.compute.amazonaws.com> Attempting python interpreter discovery
<ec2-3-249-227-122.eu-west-1.compute.amazonaws.com> ESTABLISH SSH CONNECTION FOR USER: ansible
<ec2-3-249-227-122.eu-west-1.compute.amazonaws.com> SSH: EXEC sshpass -d9 ssh -C -o ControlMaster=auto -o ControlPersist=60s -o 'User="ansible"' -o ConnectTimeout=10 -o ControlPath=/home/ansible/.ansible/cp/ce7441570e ec2-3-249-227-122.eu-west-1.compute.amazonaws.com '/bin/sh -c '"'"'echo PLATFORM; uname; echo FOUND; command -v '"'"'"'"'"'"'"'"'/usr/bin/python'"'"'"'"'"'"'"'"'; command -v '"'"'"'"'"'"'"'"'python3.7'"'"'"'"'"'"'"'"'; command -v '"'"'"'"'"'"'"'"'python3.6'"'"'"'"'"'"'"'"'; command -v '"'"'"'"'"'"'"'"'python3.5'"'"'"'"'"'"'"'"'; command -v '"'"'"'"'"'"'"'"'python2.7'"'"'"'"'"'"'"'"'; command -v '"'"'"'"'"'"'"'"'python2.6'"'"'"'"'"'"'"'"'; command -v '"'"'"'"'"'"'"'"'/usr/libexec/platform-python'"'"'"'"'"'"'"'"'; command -v '"'"'"'"'"'"'"'"'/usr/bin/python3'"'"'"'"'"'"'"'"'; command -v '"'"'"'"'"'"'"'"'python'"'"'"'"'"'"'"'"'; echo ENDFOUND && sleep 0'"'"''
<ec2-3-249-227-122.eu-west-1.compute.amazonaws.com> (0, b'PLATFORM\nLinux\nFOUND\n/usr/libexec/platform-python\nENDFOUND\n', b'')
<ec2-3-249-227-122.eu-west-1.compute.amazonaws.com> ESTABLISH SSH CONNECTION FOR USER: ansible
<ec2-3-249-227-122.eu-west-1.compute.amazonaws.com> SSH: EXEC sshpass -d9 ssh -C -o ControlMaster=auto -o ControlPersist=60s -o 'User="ansible"' -o ConnectTimeout=10 -o ControlPath=/home/ansible/.ansible/cp/ce7441570e ec2-3-249-227-122.eu-west-1.compute.amazonaws.com '/bin/sh -c '"'"'/usr/libexec/platform-python && sleep 0'"'"''
<ec2-3-249-227-122.eu-west-1.compute.amazonaws.com> (0, b'{"platform_dist_result": ["redhat", "8.2", "Ootpa"], "osrelease_content": "NAME=\\"Red Hat Enterprise Linux\\"\\nVERSION=\\"8.2 (Ootpa)\\"\\nID=\\"rhel\\"\\nID_LIKE=\\"fedora\\"\\nVERSION_ID=\\"8.2\\"\\nPLATFORM_ID=\\"platform:el8\\"\\nPRETTY_NAME=\\"Red Hat Enterprise Linux 8.2 (Ootpa)\\"\\nANSI_COLOR=\\"0;31\\"\\nCPE_NAME=\\"cpe:/o:redhat:enterprise_linux:8.2:GA\\"\\nHOME_URL=\\"https://www.redhat.com/\\"\\nBUG_REPORT_URL=\\"https://bugzilla.redhat.com/\\"\\n\\nREDHAT_BUGZILLA_PRODUCT=\\"Red Hat Enterprise Linux 8\\"\\nREDHAT_BUGZILLA_PRODUCT_VERSION=8.2\\nREDHAT_SUPPORT_PRODUCT=\\"Red Hat Enterprise Linux\\"\\nREDHAT_SUPPORT_PRODUCT_VERSION=\\"8.2\\"\\n"}\n', b'')
Using module file /usr/lib/python3.6/site-packages/ansible/modules/system/setup.py
<ec2-3-249-227-122.eu-west-1.compute.amazonaws.com> PUT /home/ansible/.ansible/tmp/ansible-local-5318rvb_n_o4/tmpqn949450 TO /home/ansible/.ansible/tmp/ansible-tmp-1598346765.0777154-5325-64035331839151/AnsiballZ_setup.py
<ec2-3-249-227-122.eu-west-1.compute.amazonaws.com> SSH: EXEC sshpass -d9 sftp -o BatchMode=no -b - -C -o ControlMaster=auto -o ControlPersist=60s -o 'User="ansible"' -o ConnectTimeout=10 -o ControlPath=/home/ansible/.ansible/cp/ce7441570e '[ec2-3-249-227-122.eu-west-1.compute.amazonaws.com]'
<ec2-3-249-227-122.eu-west-1.compute.amazonaws.com> (0, b'sftp> put /home/ansible/.ansible/tmp/ansible-local-5318rvb_n_o4/tmpqn949450 /home/ansible/.ansible/tmp/ansible-tmp-1598346765.0777154-5325-64035331839151/AnsiballZ_setup.py\n', b'')
<ec2-3-249-227-122.eu-west-1.compute.amazonaws.com> ESTABLISH SSH CONNECTION FOR USER: ansible
<ec2-3-249-227-122.eu-west-1.compute.amazonaws.com> SSH: EXEC sshpass -d9 ssh -C -o ControlMaster=auto -o ControlPersist=60s -o 'User="ansible"' -o ConnectTimeout=10 -o ControlPath=/home/ansible/.ansible/cp/ce7441570e ec2-3-249-227-122.eu-west-1.compute.amazonaws.com '/bin/sh -c '"'"'chmod u+x /home/ansible/.ansible/tmp/ansible-tmp-1598346765.0777154-5325-64035331839151/ /home/ansible/.ansible/tmp/ansible-tmp-1598346765.0777154-5325-64035331839151/AnsiballZ_setup.py && sleep 0'"'"''
<ec2-3-249-227-122.eu-west-1.compute.amazonaws.com> (0, b'', b'')
<ec2-3-249-227-122.eu-west-1.compute.amazonaws.com> ESTABLISH SSH CONNECTION FOR USER: ansible
<ec2-3-249-227-122.eu-west-1.compute.amazonaws.com> SSH: EXEC sshpass -d9 ssh -C -o ControlMaster=auto -o ControlPersist=60s -o 'User="ansible"' -o ConnectTimeout=10 -o ControlPath=/home/ansible/.ansible/cp/ce7441570e -tt ec2-3-249-227-122.eu-west-1.compute.amazonaws.com '/bin/sh -c '"'"'/usr/libexec/platform-python /home/ansible/.ansible/tmp/ansible-tmp-1598346765.0777154-5325-64035331839151/AnsiballZ_setup.py && sleep 0'"'"''
<ec2-3-249-227-122.eu-west-1.compute.amazonaws.com> (0, b'\r\n{"ansible_facts": {"ansible_user_id": "ansible", "ansible_user_uid": 1001, "ansible_user_gid": 1001, "ansible_user_gecos": "", "ansible_user_dir": "/home/ansible", "ansible_user_shell": "/bin/bash", "ansible_real_user_id": 1001, "ansible_effective_user_id": 1001, "ansible_real_group_id": 1001, "ansible_effective_group_id": 1001, "ansible_dns": {"search": ["eu-west-1.compute.internal"], "nameservers": ["172.31.0.2"]}, "ansible_system": "Linux", "ansible_kernel": "4.18.0-193.el8.x86_64", "ansible_kernel_version": "#1 SMP Fri Mar 27 14:35:58 UTC 2020", "ansible_machine": "x86_64", "ansible_python_version": "3.6.8", "ansible_fqdn": "ip-172-31-23-42.eu-west-1.compute.internal", "ansible_hostname": "ip-172-31-23-42", "ansible_nodename": "ip-172-31-23-42.eu-west-1.compute.internal", "ansible_domain": "eu-west-1.compute.internal", "ansible_userspace_bits": "64", "ansible_architecture": "x86_64", "ansible_userspace_architecture": "x86_64", "ansible_machine_id": "c91021a7ea684c2681af7bd9d965c2c5", "ansible_ssh_host_key_rsa_public": "AAAAB3NzaC1yc2EAAAADAQABAAABgQCcV4gj3QVLcr2SICCZJZoSqZjhKRO6XOP1AeJO3SeD0Iunxx/8OKcT4gDOpGoiar6wbsO6XQNMddV4rt1ewjj+IjaKgRGYb0UeGrDQi9ZIE3IAdfvZGUDNST0KiEry/CJ9P+BVNeYk0V9VNS9ffK08AkYuqR7l5Mn6BmwIugQXJWPMU9cJpAajobCagaUKy2NX7I13FPKO1vAGW8Oy+EarHAAKjRlZB3t3pVNB1NdDBqrVdeqfB6wFjGKG+whgsNv/WG8omyJp90vWZcnU+jZECphnCG25H1HII1mFh5h99NjYhI3lwv8C2ioV7LV2XfGoqJlHGA8LSNC26eHn95HkuYZyNjIUNavll2u2JdYTX3FxRkSb3y0eCXKe3Mf5VmP6r9JianL+4eiJI/EDv5IrMlnDYlLq9UkqI0S73TieSfRov0PtZa7AzxM5QcLZk36gs4alulArL8M2NSsHP6uUt4slp3Mb4tRMDfNSUoDczcRIRO7VahvIUMGunObLwIc=", "ansible_ssh_host_key_ecdsa_public": "AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBDGaQSACO6m7SJdy9C94gq7FvYNVSQwR/dWkEK/6tKMgyUhCofUsNxnlkUbdqRj88jr16JAhx4VtGK6ZlUmJlys=", "ansible_ssh_host_key_ed25519_public": "AAAAC3NzaC1lZDI1NTE5AAAAIOcxTNb++LMEkJqYpZyOa7+d2bME1Dg/aR1q2sNn32cr", "ansible_lsb": {}, "ansible_distribution": "RedHat", "ansible_distribution_release": "Ootpa", "ansible_distribution_version": "8.2", "ansible_distribution_major_version": "8", "ansible_distribution_file_path": "/etc/redhat-release", "ansible_distribution_file_variety": "RedHat", "ansible_distribution_file_parsed": true, "ansible_distribution_file_search_string": "Red Hat", "ansible_os_family": "RedHat", "ansible_fips": false, "ansible_virtualization_type": "xen", "ansible_virtualization_role": "guest", "ansible_interfaces": ["eth0", "lo"], "ansible_lo": {"device": "lo", "mtu": 65536, "active": true, "type": "loopback", "promisc": false, "ipv4": {"address": "127.0.0.1", "broadcast": "host", "netmask": "255.0.0.0", "network": "127.0.0.0"}, "ipv6": [{"address": "::1", "prefix": "128", "scope": "host"}], "features": {"rx_checksumming": "on [fixed]", "tx_checksumming": "on", "tx_checksum_ipv4": "off [fixed]", "tx_checksum_ip_generic": "on [fixed]", "tx_checksum_ipv6": "off [fixed]", "tx_checksum_fcoe_crc": "off [fixed]", "tx_checksum_sctp": "on [fixed]", "scatter_gather": "on", "tx_scatter_gather": "on [fixed]", "tx_scatter_gather_fraglist": "on [fixed]", "tcp_segmentation_offload": "on", "tx_tcp_segmentation": "on", "tx_tcp_ecn_segmentation": "on", "tx_tcp_mangleid_segmentation": "on", "tx_tcp6_segmentation": "on", "generic_segmentation_offload": "on", "generic_receive_offload": "on", "large_receive_offload": "off [fixed]", "rx_vlan_offload": "off [fixed]", "tx_vlan_offload": "off [fixed]", "ntuple_filters": "off [fixed]", "receive_hashing": "off [fixed]", "highdma": "on [fixed]", "rx_vlan_filter": "off [fixed]", "vlan_challenged": "on [fixed]", "tx_lockless": "on [fixed]", "netns_local": "on [fixed]", "tx_gso_robust": "off [fixed]", "tx_fcoe_segmentation": "off [fixed]", "tx_gre_segmentation": "off [fixed]", "tx_gre_csum_segmentation": "off [fixed]", "tx_ipxip4_segmentation": "off [fixed]", "tx_ipxip6_segmentation": "off [fixed]", "tx_udp_tnl_segmentation": "off [fixed]", "tx_udp_tnl_csum_segmentation": "off [fixed]", "tx_gso_partial": "off [fixed]", "tx_sctp_segmentation": "on", "tx_esp_segmentation": "off [fixed]", "tx_udp_segmentation": "off [fixed]", "tls_hw_rx_offload": "off [fixed]", "fcoe_mtu": "off [fixed]", "tx_nocache_copy": "off [fixed]", "loopback": "on [fixed]", "rx_fcs": "off [fixed]", "rx_all": "off [fixed]", "tx_vlan_stag_hw_insert": "off [fixed]", "rx_vlan_stag_hw_parse": "off [fixed]", "rx_vlan_stag_filter": "off [fixed]", "l2_fwd_offload": "off [fixed]", "hw_tc_offload": "off [fixed]", "esp_hw_offload": "off [fixed]", "esp_tx_csum_hw_offload": "off [fixed]", "rx_udp_tunnel_port_offload": "off [fixed]", "tls_hw_tx_offload": "off [fixed]", "rx_gro_hw": "off [fixed]", "tls_hw_record": "off [fixed]"}, "timestamping": ["tx_software", "rx_software", "software"], "hw_timestamp_filters": []}, "ansible_eth0": {"device": "eth0", "macaddress": "02:9d:f0:e8:bc:77", "mtu": 9001, "active": true, "module": "xen_netfront", "type": "ether", "pciid": "vif-0", "promisc": false, "ipv4": {"address": "172.31.23.42", "broadcast": "172.31.31.255", "netmask": "255.255.240.0", "network": "172.31.16.0"}, "ipv6": [{"address": "fe80::9d:f0ff:fee8:bc77", "prefix": "64", "scope": "link"}], "features": {"rx_checksumming": "on [fixed]", "tx_checksumming": "on", "tx_checksum_ipv4": "on [fixed]", "tx_checksum_ip_generic": "off [fixed]", "tx_checksum_ipv6": "on", "tx_checksum_fcoe_crc": "off [fixed]", "tx_checksum_sctp": "off [fixed]", "scatter_gather": "on", "tx_scatter_gather": "on", "tx_scatter_gather_fraglist": "off [fixed]", "tcp_segmentation_offload": "on", "tx_tcp_segmentation": "on", "tx_tcp_ecn_segmentation": "off [fixed]", "tx_tcp_mangleid_segmentation": "off", "tx_tcp6_segmentation": "on", "generic_segmentation_offload": "on", "generic_receive_offload": "on", "large_receive_offload": "off [fixed]", "rx_vlan_offload": "off [fixed]", "tx_vlan_offload": "off [fixed]", "ntuple_filters": "off [fixed]", "receive_hashing": "off [fixed]", "highdma": "off [fixed]", "rx_vlan_filter": "off [fixed]", "vlan_challenged": "off [fixed]", "tx_lockless": "off [fixed]", "netns_local": "off [fixed]", "tx_gso_robust": "on [fixed]", "tx_fcoe_segmentation": "off [fixed]", "tx_gre_segmentation": "off [fixed]", "tx_gre_csum_segmentation": "off [fixed]", "tx_ipxip4_segmentation": "off [fixed]", "tx_ipxip6_segmentation": "off [fixed]", "tx_udp_tnl_segmentation": "off [fixed]", "tx_udp_tnl_csum_segmentation": "off [fixed]", "tx_gso_partial": "off [fixed]", "tx_sctp_segmentation": "off [fixed]", "tx_esp_segmentation": "off [fixed]", "tx_udp_segmentation": "off [fixed]", "tls_hw_rx_offload": "off [fixed]", "fcoe_mtu": "off [fixed]", "tx_nocache_copy": "off", "loopback": "off [fixed]", "rx_fcs": "off [fixed]", "rx_all": "off [fixed]", "tx_vlan_stag_hw_insert": "off [fixed]", "rx_vlan_stag_hw_parse": "off [fixed]", "rx_vlan_stag_filter": "off [fixed]", "l2_fwd_offload": "off [fixed]", "hw_tc_offload": "off [fixed]", "esp_hw_offload": "off [fixed]", "esp_tx_csum_hw_offload": "off [fixed]", "rx_udp_tunnel_port_offload": "off [fixed]", "tls_hw_tx_offload": "off [fixed]", "rx_gro_hw": "off [fixed]", "tls_hw_record": "off [fixed]"}, "timestamping": ["rx_software", "software"], "hw_timestamp_filters": []}, "ansible_default_ipv4": {"gateway": "172.31.16.1", "interface": "eth0", "address": "172.31.23.42", "broadcast": "172.31.31.255", "netmask": "255.255.240.0", "network": "172.31.16.0", "macaddress": "02:9d:f0:e8:bc:77", "mtu": 9001, "type": "ether", "alias": "eth0"}, "ansible_default_ipv6": {}, "ansible_all_ipv4_addresses": ["172.31.23.42"], "ansible_all_ipv6_addresses": ["fe80::9d:f0ff:fee8:bc77"], "ansible_iscsi_iqn": "", "ansible_processor": ["0", "GenuineIntel", "Intel(R) Xeon(R) CPU E5-2676 v3 @ 2.40GHz"], "ansible_processor_count": 1, "ansible_processor_cores": 1, "ansible_processor_threads_per_core": 1, "ansible_processor_vcpus": 1, "ansible_memtotal_mb": 815, "ansible_memfree_mb": 280, "ansible_swaptotal_mb": 0, "ansible_swapfree_mb": 0, "ansible_memory_mb": {"real": {"total": 815, "used": 535, "free": 280}, "nocache": {"free": 613, "used": 202}, "swap": {"total": 0, "free": 0, "used": 0, "cached": 0}}, "ansible_bios_date": "08/24/2006", "ansible_bios_version": "4.2.amazon", "ansible_form_factor": "Other", "ansible_product_name": "HVM domU", "ansible_product_serial": "NA", "ansible_product_uuid": "NA", "ansible_product_version": "4.2.amazon", "ansible_system_vendor": "Xen", "ansible_devices": {"xvda": {"virtual": 1, "links": {"ids": [], "uuids": [], "labels": [], "masters": []}, "vendor": null, "model": null, "sas_address": null, "sas_device_handle": null, "removable": "0", "support_discard": "0", "partitions": {"xvda2": {"links": {"ids": [], "uuids": ["3510a17e-27dc-4ae2-9243-d600c16f4106"], "labels": [], "masters": []}, "start": "4096", "sectors": "20967391", "sectorsize": 512, "size": "10.00 GB", "uuid": "3510a17e-27dc-4ae2-9243-d600c16f4106", "holders": []}, "xvda1": {"links": {"ids": [], "uuids": [], "labels": [], "masters": []}, "start": "2048", "sectors": "2048", "sectorsize": 512, "size": "1.00 MB", "uuid": null, "holders": []}}, "rotational": "0", "scheduler_mode": "mq-deadline", "sectors": "20971520", "sectorsize": "512", "size": "10.00 GB", "host": "", "holders": []}}, "ansible_device_links": {"ids": {}, "uuids": {"xvda2": ["3510a17e-27dc-4ae2-9243-d600c16f4106"]}, "labels": {}, "masters": {}}, "ansible_uptime_seconds": 4422, "ansible_mounts": [{"mount": "/", "device": "/dev/xvda2", "fstype": "xfs", "options": "rw,seclabel,relatime,attr2,inode64,noquota", "size_total": 10724814848, "size_available": 9497722880, "block_size": 4096, "block_total": 2618363, "block_available": 2318780, "block_used": 299583, "inode_total": 5241840, "inode_available": 5208528, "inode_used": 33312, "uuid": "3510a17e-27dc-4ae2-9243-d600c16f4106"}], "ansible_local": {}, "ansible_fibre_channel_wwn": [], "ansible_system_capabilities_enforced": "True", "ansible_system_capabilities": [""], "ansible_python": {"version": {"major": 3, "minor": 6, "micro": 8, "releaselevel": "final", "serial": 0}, "version_info": [3, 6, 8, "final", 0], "executable": "/usr/libexec/platform-python", "has_sslcontext": true, "type": "cpython"}, "ansible_cmdline": {"BOOT_IMAGE": "(hd0,msdos2)/boot/vmlinuz-4.18.0-193.el8.x86_64", "root": "UUID=3510a17e-27dc-4ae2-9243-d600c16f4106", "ro": true, "console": "tty0", "net.ifnames": "0", "rd.blacklist": "nouveau", "nvme_core.io_timeout": "4294967295", "crashkernel": "auto"}, "ansible_proc_cmdline": {"BOOT_IMAGE": "(hd0,msdos2)/boot/vmlinuz-4.18.0-193.el8.x86_64", "root": "UUID=3510a17e-27dc-4ae2-9243-d600c16f4106", "ro": true, "console": ["ttyS0,115200n8", "tty0"], "net.ifnames": "0", "rd.blacklist": "nouveau", "nvme_core.io_timeout": "4294967295", "crashkernel": "auto"}, "ansible_is_chroot": false, "ansible_date_time": {"year": "2020", "month": "08", "weekday": "Tuesday", "weekday_number": "2", "weeknumber": "34", "day": "25", "hour": "09", "minute": "12", "second": "46", "epoch": "1598346766", "date": "2020-08-25", "time": "09:12:46", "iso8601_micro": "2020-08-25T09:12:46.165799Z", "iso8601": "2020-08-25T09:12:46Z", "iso8601_basic": "20200825T091246165668", "iso8601_basic_short": "20200825T091246", "tz": "UTC", "tz_offset": "+0000"}, "ansible_selinux_python_present": true, "ansible_selinux": {"status": "enabled", "policyvers": 31, "config_mode": "enforcing", "mode": "enforcing", "type": "targeted"}, "ansible_apparmor": {"status": "disabled"}, "ansible_env": {"LS_COLORS": "rs=0:di=38;5;33:ln=38;5;51:mh=00:pi=40;38;5;11:so=38;5;13:do=38;5;5:bd=48;5;232;38;5;11:cd=48;5;232;38;5;3:or=48;5;232;38;5;9:mi=01;05;37;41:su=48;5;196;38;5;15:sg=48;5;11;38;5;16:ca=48;5;196;38;5;226:tw=48;5;10;38;5;16:ow=48;5;10;38;5;21:st=48;5;21;38;5;15:ex=38;5;40:*.tar=38;5;9:*.tgz=38;5;9:*.arc=38;5;9:*.arj=38;5;9:*.taz=38;5;9:*.lha=38;5;9:*.lz4=38;5;9:*.lzh=38;5;9:*.lzma=38;5;9:*.tlz=38;5;9:*.txz=38;5;9:*.tzo=38;5;9:*.t7z=38;5;9:*.zip=38;5;9:*.z=38;5;9:*.dz=38;5;9:*.gz=38;5;9:*.lrz=38;5;9:*.lz=38;5;9:*.lzo=38;5;9:*.xz=38;5;9:*.zst=38;5;9:*.tzst=38;5;9:*.bz2=38;5;9:*.bz=38;5;9:*.tbz=38;5;9:*.tbz2=38;5;9:*.tz=38;5;9:*.deb=38;5;9:*.rpm=38;5;9:*.jar=38;5;9:*.war=38;5;9:*.ear=38;5;9:*.sar=38;5;9:*.rar=38;5;9:*.alz=38;5;9:*.ace=38;5;9:*.zoo=38;5;9:*.cpio=38;5;9:*.7z=38;5;9:*.rz=38;5;9:*.cab=38;5;9:*.wim=38;5;9:*.swm=38;5;9:*.dwm=38;5;9:*.esd=38;5;9:*.jpg=38;5;13:*.jpeg=38;5;13:*.mjpg=38;5;13:*.mjpeg=38;5;13:*.gif=38;5;13:*.bmp=38;5;13:*.pbm=38;5;13:*.pgm=38;5;13:*.ppm=38;5;13:*.tga=38;5;13:*.xbm=38;5;13:*.xpm=38;5;13:*.tif=38;5;13:*.tiff=38;5;13:*.png=38;5;13:*.svg=38;5;13:*.svgz=38;5;13:*.mng=38;5;13:*.pcx=38;5;13:*.mov=38;5;13:*.mpg=38;5;13:*.mpeg=38;5;13:*.m2v=38;5;13:*.mkv=38;5;13:*.webm=38;5;13:*.ogm=38;5;13:*.mp4=38;5;13:*.m4v=38;5;13:*.mp4v=38;5;13:*.vob=38;5;13:*.qt=38;5;13:*.nuv=38;5;13:*.wmv=38;5;13:*.asf=38;5;13:*.rm=38;5;13:*.rmvb=38;5;13:*.flc=38;5;13:*.avi=38;5;13:*.fli=38;5;13:*.flv=38;5;13:*.gl=38;5;13:*.dl=38;5;13:*.xcf=38;5;13:*.xwd=38;5;13:*.yuv=38;5;13:*.cgm=38;5;13:*.emf=38;5;13:*.ogv=38;5;13:*.ogx=38;5;13:*.aac=38;5;45:*.au=38;5;45:*.flac=38;5;45:*.m4a=38;5;45:*.mid=38;5;45:*.midi=38;5;45:*.mka=38;5;45:*.mp3=38;5;45:*.mpc=38;5;45:*.ogg=38;5;45:*.ra=38;5;45:*.wav=38;5;45:*.oga=38;5;45:*.opus=38;5;45:*.spx=38;5;45:*.xspf=38;5;45:", "SSH_CONNECTION": "172.31.18.236 33608 172.31.23.42 22", "_": "/usr/libexec/platform-python", "LANG": "en_US.UTF-8", "XDG_SESSION_ID": "39", "USER": "ansible", "SELINUX_ROLE_REQUESTED": "", "PWD": "/home/ansible", "HOME": "/home/ansible", "SSH_CLIENT": "172.31.18.236 33608 22", "SELINUX_LEVEL_REQUESTED": "", "SSH_TTY": "/dev/pts/1", "SHELL": "/bin/bash", "TERM": "xterm-256color", "SELINUX_USE_CURRENT_RANGE": "", "SHLVL": "2", "LOGNAME": "ansible", "DBUS_SESSION_BUS_ADDRESS": "unix:path=/run/user/1001/bus", "XDG_RUNTIME_DIR": "/run/user/1001", "PATH": "/home/ansible/.local/bin:/home/ansible/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin", "LESSOPEN": "||/usr/bin/lesspipe.sh %s"}, "ansible_pkg_mgr": "dnf", "ansible_hostnqn": "", "ansible_service_mgr": "systemd", "gather_subset": ["all"], "module_setup": true}, "invocation": {"module_args": {"gather_subset": ["all"], "gather_timeout": 10, "filter": "*", "fact_path": "/etc/ansible/facts.d"}}}\r\n', b'Shared connection to ec2-3-249-227-122.eu-west-1.compute.amazonaws.com closed.\r\n')
<ec2-3-249-227-122.eu-west-1.compute.amazonaws.com> ESTABLISH SSH CONNECTION FOR USER: ansible
<ec2-3-249-227-122.eu-west-1.compute.amazonaws.com> SSH: EXEC sshpass -d9 ssh -C -o ControlMaster=auto -o ControlPersist=60s -o 'User="ansible"' -o ConnectTimeout=10 -o ControlPath=/home/ansible/.ansible/cp/ce7441570e ec2-3-249-227-122.eu-west-1.compute.amazonaws.com '/bin/sh -c '"'"'rm -f -r /home/ansible/.ansible/tmp/ansible-tmp-1598346765.0777154-5325-64035331839151/ > /dev/null 2>&1 && sleep 0'"'"''
<ec2-3-249-227-122.eu-west-1.compute.amazonaws.com> (0, b'', b'')
ok: [ec2-3-249-227-122.eu-west-1.compute.amazonaws.com]
META: ran handlers

TASK [Transfering from between servers using delegate] ***************************************************************************************************************************************************************************************
task path: /home/ansible/sync.yml:5
<ec2-3-249-85-67.eu-west-1.compute.amazonaws.com> ESTABLISH SSH CONNECTION FOR USER: ansible
<ec2-3-249-85-67.eu-west-1.compute.amazonaws.com> SSH: EXEC sshpass -d9 ssh -C -o ControlMaster=auto -o ControlPersist=60s -o 'User="ansible"' -o ConnectTimeout=10 -o ControlPath=/home/ansible/.ansible/cp/d302bd36fb ec2-3-249-85-67.eu-west-1.compute.amazonaws.com '/bin/sh -c '"'"'echo ~ansible && sleep 0'"'"''
<ec2-3-249-85-67.eu-west-1.compute.amazonaws.com> (0, b'/home/ansible\n', b'')
<ec2-3-249-85-67.eu-west-1.compute.amazonaws.com> ESTABLISH SSH CONNECTION FOR USER: ansible
<ec2-3-249-85-67.eu-west-1.compute.amazonaws.com> SSH: EXEC sshpass -d9 ssh -C -o ControlMaster=auto -o ControlPersist=60s -o 'User="ansible"' -o ConnectTimeout=10 -o ControlPath=/home/ansible/.ansible/cp/d302bd36fb ec2-3-249-85-67.eu-west-1.compute.amazonaws.com '/bin/sh -c '"'"'( umask 77 && mkdir -p "` echo /home/ansible/.ansible/tmp `"&& mkdir /home/ansible/.ansible/tmp/ansible-tmp-1598346766.6341565-5347-13073173533087 && echo ansible-tmp-1598346766.6341565-5347-13073173533087="` echo /home/ansible/.ansible/tmp/ansible-tmp-1598346766.6341565-5347-13073173533087 `" ) && sleep 0'"'"''
<ec2-3-249-85-67.eu-west-1.compute.amazonaws.com> (0, b'ansible-tmp-1598346766.6341565-5347-13073173533087=/home/ansible/.ansible/tmp/ansible-tmp-1598346766.6341565-5347-13073173533087\n', b'')
<ec2-3-249-85-67.eu-west-1.compute.amazonaws.com> Attempting python interpreter discovery
<ec2-3-249-85-67.eu-west-1.compute.amazonaws.com> ESTABLISH SSH CONNECTION FOR USER: ansible
<ec2-3-249-85-67.eu-west-1.compute.amazonaws.com> SSH: EXEC sshpass -d9 ssh -C -o ControlMaster=auto -o ControlPersist=60s -o 'User="ansible"' -o ConnectTimeout=10 -o ControlPath=/home/ansible/.ansible/cp/d302bd36fb ec2-3-249-85-67.eu-west-1.compute.amazonaws.com '/bin/sh -c '"'"'echo PLATFORM; uname; echo FOUND; command -v '"'"'"'"'"'"'"'"'/usr/bin/python'"'"'"'"'"'"'"'"'; command -v '"'"'"'"'"'"'"'"'python3.7'"'"'"'"'"'"'"'"'; command -v '"'"'"'"'"'"'"'"'python3.6'"'"'"'"'"'"'"'"'; command -v '"'"'"'"'"'"'"'"'python3.5'"'"'"'"'"'"'"'"'; command -v '"'"'"'"'"'"'"'"'python2.7'"'"'"'"'"'"'"'"'; command -v '"'"'"'"'"'"'"'"'python2.6'"'"'"'"'"'"'"'"'; command -v '"'"'"'"'"'"'"'"'/usr/libexec/platform-python'"'"'"'"'"'"'"'"'; command -v '"'"'"'"'"'"'"'"'/usr/bin/python3'"'"'"'"'"'"'"'"'; command -v '"'"'"'"'"'"'"'"'python'"'"'"'"'"'"'"'"'; echo ENDFOUND && sleep 0'"'"''
<ec2-3-249-85-67.eu-west-1.compute.amazonaws.com> (0, b'PLATFORM\nLinux\nFOUND\n/usr/libexec/platform-python\nENDFOUND\n', b'')
<ec2-3-249-85-67.eu-west-1.compute.amazonaws.com> ESTABLISH SSH CONNECTION FOR USER: ansible
<ec2-3-249-85-67.eu-west-1.compute.amazonaws.com> SSH: EXEC sshpass -d9 ssh -C -o ControlMaster=auto -o ControlPersist=60s -o 'User="ansible"' -o ConnectTimeout=10 -o ControlPath=/home/ansible/.ansible/cp/d302bd36fb ec2-3-249-85-67.eu-west-1.compute.amazonaws.com '/bin/sh -c '"'"'/usr/libexec/platform-python && sleep 0'"'"''
<ec2-3-249-85-67.eu-west-1.compute.amazonaws.com> (0, b'{"platform_dist_result": ["redhat", "8.2", "Ootpa"], "osrelease_content": "NAME=\\"Red Hat Enterprise Linux\\"\\nVERSION=\\"8.2 (Ootpa)\\"\\nID=\\"rhel\\"\\nID_LIKE=\\"fedora\\"\\nVERSION_ID=\\"8.2\\"\\nPLATFORM_ID=\\"platform:el8\\"\\nPRETTY_NAME=\\"Red Hat Enterprise Linux 8.2 (Ootpa)\\"\\nANSI_COLOR=\\"0;31\\"\\nCPE_NAME=\\"cpe:/o:redhat:enterprise_linux:8.2:GA\\"\\nHOME_URL=\\"https://www.redhat.com/\\"\\nBUG_REPORT_URL=\\"https://bugzilla.redhat.com/\\"\\n\\nREDHAT_BUGZILLA_PRODUCT=\\"Red Hat Enterprise Linux 8\\"\\nREDHAT_BUGZILLA_PRODUCT_VERSION=8.2\\nREDHAT_SUPPORT_PRODUCT=\\"Red Hat Enterprise Linux\\"\\nREDHAT_SUPPORT_PRODUCT_VERSION=\\"8.2\\"\\n"}\n', b'')
Using module file /usr/lib/python3.6/site-packages/ansible/modules/files/synchronize.py
<ec2-3-249-85-67.eu-west-1.compute.amazonaws.com> PUT /home/ansible/.ansible/tmp/ansible-local-5318rvb_n_o4/tmp2opbxma7 TO /home/ansible/.ansible/tmp/ansible-tmp-1598346766.6341565-5347-13073173533087/AnsiballZ_synchronize.py
<ec2-3-249-85-67.eu-west-1.compute.amazonaws.com> SSH: EXEC sshpass -d9 sftp -o BatchMode=no -b - -C -o ControlMaster=auto -o ControlPersist=60s -o 'User="ansible"' -o ConnectTimeout=10 -o ControlPath=/home/ansible/.ansible/cp/d302bd36fb '[ec2-3-249-85-67.eu-west-1.compute.amazonaws.com]'
<ec2-3-249-85-67.eu-west-1.compute.amazonaws.com> (0, b'sftp> put /home/ansible/.ansible/tmp/ansible-local-5318rvb_n_o4/tmp2opbxma7 /home/ansible/.ansible/tmp/ansible-tmp-1598346766.6341565-5347-13073173533087/AnsiballZ_synchronize.py\n', b'')
<ec2-3-249-85-67.eu-west-1.compute.amazonaws.com> ESTABLISH SSH CONNECTION FOR USER: ansible
<ec2-3-249-85-67.eu-west-1.compute.amazonaws.com> SSH: EXEC sshpass -d9 ssh -C -o ControlMaster=auto -o ControlPersist=60s -o 'User="ansible"' -o ConnectTimeout=10 -o ControlPath=/home/ansible/.ansible/cp/d302bd36fb ec2-3-249-85-67.eu-west-1.compute.amazonaws.com '/bin/sh -c '"'"'chmod u+x /home/ansible/.ansible/tmp/ansible-tmp-1598346766.6341565-5347-13073173533087/ /home/ansible/.ansible/tmp/ansible-tmp-1598346766.6341565-5347-13073173533087/AnsiballZ_synchronize.py && sleep 0'"'"''
<ec2-3-249-85-67.eu-west-1.compute.amazonaws.com> (0, b'', b'')
<ec2-3-249-85-67.eu-west-1.compute.amazonaws.com> ESTABLISH SSH CONNECTION FOR USER: ansible
<ec2-3-249-85-67.eu-west-1.compute.amazonaws.com> SSH: EXEC sshpass -d9 ssh -C -o ControlMaster=auto -o ControlPersist=60s -o 'User="ansible"' -o ConnectTimeout=10 -o ControlPath=/home/ansible/.ansible/cp/d302bd36fb -tt ec2-3-249-85-67.eu-west-1.compute.amazonaws.com '/bin/sh -c '"'"'/usr/libexec/platform-python /home/ansible/.ansible/tmp/ansible-tmp-1598346766.6341565-5347-13073173533087/AnsiballZ_synchronize.py && sleep 0'"'"''
<ec2-3-249-85-67.eu-west-1.compute.amazonaws.com> (1, b'\r\n{"rc": 2, "msg": "[Errno 2] No such file or directory: b\'sshpass\': b\'sshpass\'", "cmd": "sshpass", "failed": true, "exception": "  File \\"/tmp/ansible_synchronize_payload_zoiutoi7/ansible_synchronize_payload.zip/ansible/module_utils/basic.py\\", line 2588, in run_command\\n    cmd = subprocess.Popen(args, **kwargs)\\n  File \\"/usr/lib64/python3.6/subprocess.py\\", line 729, in __init__\\n    restore_signals, start_new_session)\\n  File \\"/usr/lib64/python3.6/subprocess.py\\", line 1364, in _execute_child\\n    raise child_exception_type(errno_num, err_msg, err_filename)\\n", "invocation": {"module_args": {"src": "/tmp/testdir", "dest": "[email protected]:/tmp", "_local_rsync_path": "rsync", "_local_rsync_password": "VALUE_SPECIFIED_IN_NO_LOG_PARAMETER", "rsync_path": null, "delete": false, "_substitute_controller": false, "archive": true, "checksum": false, "compress": true, "existing_only": false, "dirs": false, "copy_links": false, "set_remote_user": true, "rsync_timeout": 0, "rsync_opts": [], "partial": false, "verify_host": false, "mode": "push", "dest_port": null, "private_key": null, "recursive": null, "links": null, "perms": null, "times": null, "owner": null, "group": null, "ssh_args": null, "link_dest": null}}}\r\n', b'Shared connection to ec2-3-249-85-67.eu-west-1.compute.amazonaws.com closed.\r\n')
<ec2-3-249-85-67.eu-west-1.compute.amazonaws.com> Failed to connect to the host via ssh: Shared connection to ec2-3-249-85-67.eu-west-1.compute.amazonaws.com closed.
<ec2-3-249-85-67.eu-west-1.compute.amazonaws.com> ESTABLISH SSH CONNECTION FOR USER: ansible
<ec2-3-249-85-67.eu-west-1.compute.amazonaws.com> SSH: EXEC sshpass -d9 ssh -C -o ControlMaster=auto -o ControlPersist=60s -o 'User="ansible"' -o ConnectTimeout=10 -o ControlPath=/home/ansible/.ansible/cp/d302bd36fb ec2-3-249-85-67.eu-west-1.compute.amazonaws.com '/bin/sh -c '"'"'rm -f -r /home/ansible/.ansible/tmp/ansible-tmp-1598346766.6341565-5347-13073173533087/ > /dev/null 2>&1 && sleep 0'"'"''
<ec2-3-249-85-67.eu-west-1.compute.amazonaws.com> (0, b'', b'')
The full traceback is:
  File "/tmp/ansible_synchronize_payload_zoiutoi7/ansible_synchronize_payload.zip/ansible/module_utils/basic.py", line 2588, in run_command
    cmd = subprocess.Popen(args, **kwargs)
  File "/usr/lib64/python3.6/subprocess.py", line 729, in __init__
    restore_signals, start_new_session)
  File "/usr/lib64/python3.6/subprocess.py", line 1364, in _execute_child
    raise child_exception_type(errno_num, err_msg, err_filename)
fatal: [ec2-3-249-227-122.eu-west-1.compute.amazonaws.com -> ec2-3-249-85-67.eu-west-1.compute.amazonaws.com]: FAILED! => {
    "changed": false,
    "cmd": "sshpass",
    "invocation": {
        "module_args": {
            "_local_rsync_password": "VALUE_SPECIFIED_IN_NO_LOG_PARAMETER",
            "_local_rsync_path": "rsync",
            "_substitute_controller": false,
            "archive": true,
            "checksum": false,
            "compress": true,
            "copy_links": false,
            "delete": false,
            "dest": "[email protected]:/tmp",
            "dest_port": null,
            "dirs": false,
            "existing_only": false,
            "group": null,
            "link_dest": null,
            "links": null,
            "mode": "push",
            "owner": null,
            "partial": false,
            "perms": null,
            "private_key": null,
            "recursive": null,
            "rsync_opts": [],
            "rsync_path": null,
            "rsync_timeout": 0,
            "set_remote_user": true,
            "src": "/tmp/testdir",
            "ssh_args": null,
            "times": null,
            "verify_host": false
        }
    },
    "msg": "[Errno 2] No such file or directory: b'sshpass': b'sshpass'",
    "rc": 2
}

PLAY RECAP ***********************************************************************************************************************************************************************************************************************************
ec2-3-249-227-122.eu-west-1.compute.amazonaws.com : ok=1    changed=0    unreachable=0    failed=1    skipped=0    rescued=0    ignored=0   

$ 

lucas-benedito avatar Aug 25 '20 10:08 lucas-benedito

Hello! Thank you for the bug report. Using Ansible version 2.9.13 with the ansible.posix collection version 1.1.1 I'm not able to reproduce this issue, is there any more information that you could provide that might help me reproduce this locally in order to fix the issue?

maxamillion avatar Sep 28 '20 20:09 maxamillion

Hello, The issue is only reproducible in RHEL8 servers and the playbook was used as mentioned in the example, using the synchronize module existent in the installation. Also, the issue only happens when using ssh password but works successfully when using ssh-key.

lucas-benedito avatar Sep 29 '20 13:09 lucas-benedito

@lucas-benedito Thank you for the feedback. Seems like there are a few variables at play

Does it fail on non RHEL8 machines with ssh password?

gundalow avatar Oct 23 '20 09:10 gundalow

@gundalow from the tests performed I was only able to reproduce it in RHEL8.

lucas-benedito avatar Oct 23 '20 14:10 lucas-benedito

Hi @lucas-benedito :) I have replicated a similar issue on the following test environment(2.9.11,2.9.27 and 2.12.0 on RHEL8.5):

Environment:

Control Node: server10 (RHEL8.5) ansible(2.9.11, 2.9.27 and 2.12.0), sshpass, rsync
Managed Node: server11 (RHEL8.5) rsync
Delegate To:  server12 (RHEL8.5) rsync

Playbook(issue_89.yml):

---
- name: Sync between servers
  hosts: issue_89
  tasks:
  - file:
      path: /tmp/testdir
      state: absent

  - name: Transfering from between servers using delegate
    synchronize:
      src: /tmp/testdir
      dest: /tmp
    delegate_to: server12

Inventory File(inventory):

[issue_89]
server11

Error Message:

$ ansible-playbook -i inventory playbook/issue_89.yml -k -vvv
...snip...
The full traceback is:
  File "/tmp/ansible_synchronize_payload_qob31y7j/ansible_synchronize_payload.zip/ansible/module_utils/basic.py", line 2588, in run_command
    cmd = subprocess.Popen(args, **kwargs)
  File "/usr/lib64/python3.6/subprocess.py", line 729, in __init__
    restore_signals, start_new_session)
  File "/usr/lib64/python3.6/subprocess.py", line 1364, in _execute_child
    raise child_exception_type(errno_num, err_msg, err_filename)
fatal: [server11 -> server12]: FAILED! => {
    "changed": false,
    "cmd": "sshpass",
    "invocation": {
        "module_args": {
...snip...
        }
    },
    "msg": "[Errno 2] No such file or directory: b'sshpass': b'sshpass'",
    "rc": 2
}

Once I installed sshpass to delegate_to host server12, it worked without errors. So if it is possible, can you re-confirm that sshpass package has already been installed to your delegatet_to host or not?

saito-hideki avatar Dec 06 '21 04:12 saito-hideki

I can reproduce this on OSX running ansible.posix.synchronize against a raspberry pi

OSX

uname -a
Darwin spuder.local 21.3.0 Darwin Kernel Version 21.3.0: Wed Jan  5 21:37:58 PST 2022; root:xnu-8019.80.24~20/RELEASE_ARM64_T6000 arm64

Raspberry Pi

Using the fluiddpi image based on Rasbian

pi@fluiddpi:~ $cat /etc/issue
Raspbian GNU/Linux 10 \n \l

pi@fluiddpi:~ $ uname -a
Linux fluiddpi 5.10.103-v7+ #1529 SMP Tue Mar 8 12:21:37 GMT 2022 armv7l GNU/Linux

Ansible

ansible [core 2.12.2]
  config file = None
  configured module search path = ['/Users/spencer.owen/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /opt/homebrew/Cellar/ansible/5.3.0/libexec/lib/python3.10/site-packages/ansible
  ansible collection location = /Users/spencer.owen/.ansible/collections:/usr/share/ansible/collections
  executable location = /opt/homebrew/bin/ansible
  python version = 3.10.2 (main, Feb  2 2022, 05:51:25) [Clang 13.0.0 (clang-1300.0.29.3)]
  jinja version = 3.0.3
  libyaml = True

Playbook

- name: Update klipper config
  hosts: ender2pro
  remote_user: root
  gather_facts: no
  tasks:
  - name: Synchronize macros folder
    ansible.posix.synchronize:
      src: macros/
      dest: /home/pi/klipper_config/macros/

I am using ssh password auth with paramiko

ansible-playbook -i inventory playbook.yaml -c paramiko --ask-pass

Workaround

Don't use password based authentication. Either install sshpass or setup ssh keys with ssh-copy-id

spuder avatar Mar 18 '22 19:03 spuder

I had the same problem (and workaround) - but is there a way to tell Ansible in the playbook to re-establish the ssh connection (without ask-pass) after the key has been written?

macau23 avatar Mar 28 '22 16:03 macau23

I also reproduced this issue against RHEL 7.6 as well.

sugitk avatar Oct 24 '22 01:10 sugitk