Как переслать учетную запись ansible-awx - PullRequest
0 голосов
/ 01 мая 2019

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
...