AWX-шаблон запрашивает учетные данные для подключения через ssh
к большому списку хостов.
Эти учетные данные следует использовать для push
через ssh
с git-репозиторием,потому что я не хочу создавать или передавать ssh-ключ на каждом хосте.
Это возможно с ansible-playbook
в сочетании с ssh-agent
.
Есть ли способиспользовать ForwardAgent с AWX?
$ cat ~/.ssh/config
Host *
ForwardAgent yes
$ cat playbook_ssh_forward.yml
---
- name: test ForwardAgent
hosts: all
gather_facts: no
tasks:
- name: check ssh-key
shell: ssh-add -lE md5
register: output
- name: show usable keys
debug:
var: output.stdout
...
$ ansible-playbook -i localhost, playbook_ssh_forward.yml
PLAY [test ForwardAgent] *******************************************************************************************************
TASK [check ssh-key] ***********************************************************************************************************
changed: [localhost]
TASK [show usable keys] ********************************************************************************************************
ok: [localhost] => {
"output.stdout": "2048 MD5:d8:4a:52:41:a7:9e:a3:0d:ff:ff:ff:ff:b5:a3:89:1f rsa-key-20190501 (RSA)"
}
PLAY RECAP *********************************************************************************************************************
localhost : ok=2 changed=1 unreachable=0 failed=0
AWX возвращает "stderr": "Could not open a connection to your authentication agent."
Если возможно, мне нужна опция ForwardAgent
для каждой учетной записи AWX и не меняется ansible.cfg
по всему миру:
[ssh_connection]
ssh_args = -o ForwardAgent=yes -o ControlMaster=auto -o ControlPersist=15m -q