Использование хранилища в playbooks - PullRequest
0 голосов
/ 07 марта 2019

Здравствуйте, я пытаюсь запустить следующую книгу с использованием хранилища, но не могу заставить ее работать.

Создан файл хранилища с использованием:

ansible-valut create group_vars/routers

там у меня были следующие записи:

ansible_ssh_user: admin
ansible_ssh_pw: admin
auth_pass: admin

Тогда у меня была следующая пьеса:

---
- hosts:routers
  gather_facts: true
  connection: local

  tasks:
    - name: show run
      ios_command:
        authorize: yes
        auth_pass: "{{ auth_pass }}"
        commands:
          - show run
      register: config

Когда я пытаюсь запустить его с помощью этой команды cli

ansible-playbook -u admin script.yaml --ask-vault-pass

Я получаю следующую ошибку каждый раз

Unable to elevate privelage to enable mode, at prompt [None] with error: timeout value 10 seconds reached while trying to send command: enable

UPDATE

Если я изменил соединение на network_cli, теперь я получаю следующую ошибку:

fatal: [ROUTER-A]: Failed! => {"changed": false, "msg": "show run\r\n       ^\r\n% Invalid input detected at '^' marker.\r\n\rROUTER-A>"}

1 Ответ

0 голосов
/ 07 марта 2019

См. Минимальный пример ниже. Текст для шифрования в файле:

test: "TEST VARIABLE"

.

> set | grep VAULT
ANSIBLE_VAULT_PASSWORD_FILE=/home/admin/.vault_pass.txt

> ls -1
ansible.cfg
group_vars
hosts
test.yml

> cat ansible.cfg 
[defaults]
inventory = $PWD/hosts

> cat hosts
localhost
[routers]
localhost

> ansible-vault create group_vars/routers
> cat group_vars/routers 
$ANSIBLE_VAULT;1.1;AES256
3733 ...

> cat test.yml 
- hosts: routers
  tasks:
  - debug: var=test

> ansible-playbook test.yml 
PLAY [routers] 
TASK [Gathering Facts] 
ok: [localhost]
TASK [debug] 
ok: [localhost] => {
"test": "TEST VARIABLE"
}
PLAY RECAP 
localhost                  : ok=2    changed=0    unreachable=0    failed=0
...