Open
Description
SUMMARY
When using variable in ansible_user
, and the default value set_remote_user=true
, then we got error:
group_vars/all/default.yml
deploy_user: ubuntu
ansible_user: '{{ deploy_user }}'
task.yml
- name: ANSISTRANO | RSYNC DIRECT | Rsync application files directly to remote release path
synchronize:
src: "{{ ansistrano_deploy_from }}"
dest: "{{ ansistrano_release_path.stdout }}"
set_remote_user: yes
recursive: yes
delete: yes
archive: yes
compress: yes
use_ssh_args: "{{ ansistrano_rsync_use_ssh_args | default(omit) }}"
rsync_opts: "{{ ansistrano_rsync_extra_params | default(omit) }}"
rsync_path: "{{ ansistrano_rsync_path | default(omit) }}"
Output (added line breaks):
fatal: [dev_host_site]: FAILED! => {"changed": false, "cmd":
"/usr/bin/rsync --delay-updates -F --compress --delete-after --archive
--rsh='/usr/bin/ssh -S none -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null'
--no-perms --no-g --chmod=ugo=rwX --omit-dir-times --exclude=/infra/vault_pass.txt
--quiet --out-format='<<CHANGED>>%i %n%L'
/srv/Projects/site/infra/..
{{ deploy_user }}@84.84.84.84:/srv/site-dev/releases/20210930114615Z",
"msg": "Warning: Permanently added '84.84.84.84' (ECDSA) to the list of known hosts.\r\n
}}@84.84.84.84: Permission denied (publickey).\r\n
rsync: connection unexpectedly closed (0 bytes received so far) [sender]\n
rsync error: unexplained error (code 255) at io.c(235) [sender=3.1.3]\n", "rc": 255}
As you can see, text {{ deploy_user }}
inserted as is, even with spaces, and so SSH login }}
is used.
ISSUE TYPE
- Bug Report
COMPONENT NAME
synchronize
ANSIBLE VERSION
ansible [core 2.11.5]
config file = /srv/Projects/Examples/ansistrano-deploy/ansible.cfg
configured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /opt/pipx/venvs/ansible/lib/python3.9/site-packages/ansible
ansible collection location = /root/.ansible/collections:/usr/share/ansible/collections
executable location = /opt/pipx/bin/ansible
python version = 3.9.5 (default, May 19 2021, 11:32:47) [GCC 9.3.0]
jinja version = 3.0.1
libyaml = True
COLLECTION VERSION
Collection Version
------------- -------
ansible.posix 1.3.0
CONFIGURATION
ANSIBLE_PIPELINING(/srv/Projects/site/infra/ansible.cfg) = True
DEFAULT_FORKS(/srv/Projects/site/infra/ansible.cfg) = 1
DEFAULT_HOST_LIST(/srv/Projects/site/infra/ansible.cfg) = ['/srv/Projects/site/infra/hosts.yml']
DEFAULT_JINJA2_NATIVE(/srv/Projects/site/infra/ansible.cfg) = True
DEFAULT_MANAGED_STR(/srv/Projects/site/infra/ansible.cfg) = This file is managed by Ansible, changes will be lost. Source: {file}
DEFAULT_VAULT_PASSWORD_FILE(/srv/Projects/site/infra/ansible.cfg) = /srv/Projects/site/infra/vault_pass.txt
DIFF_ALWAYS(/srv/Projects/site/infra/ansible.cfg) = True
INTERPRETER_PYTHON(/srv/Projects/site/infra/ansible.cfg) = auto
OS / ENVIRONMENT
Ubuntu 20.04