ansible: обнаружен повторяющийся ключ dict (подсказка) - PullRequest
0 голосов
/ 24 февраля 2020

Я пытаюсь сделать резервную копию конфигурации коммутатора Cisco в tftp с ansible.

Я ansible новичок ie, но мне удалось набрать один простой лайнер и установить опции в коммутаторе. Команда резервного копирования в tftp пока не будет работать.

, очевидно, параметры команды хранятся в словаре python, и когда я пытаюсь использовать опции prompt: и answer: дважды в одной команде, я получаю ошибку.

[WARNING]: While constructing a mapping from backup-cisco-tftp.yml, line 11, column 9, found a duplicate dict key (prompt). Using last defined value only.

в задании говорится:

fatal: [SW3]: FAILED! => {"ansible_facts": {"discovered_interpreter_python": "/usr/bin/python"}, "changed": false, "msg": "argument commands is of type <type 'dict'> and we were unable to convert to list: <type 'dict'> cannot be converted to a list"}

Код:

      gather_facts: false
      connection: network_cli
      tasks:
      - name: backup to tftp
        ios_command:
          commands:
            command: "copy running-config tftp:"
            prompt: "remote host"
            answer: "1.5.1.2"
            prompt: "filename"
            answer: "backup-{{ inventory_hostname }}.txt"

I угадайте, что должен быть способ ждать текст и добавить ответ дважды?

Заранее спасибо

Wouter

1 Ответ

0 голосов
/ 24 февраля 2020

Пожалуйста, попробуйте, как показано ниже

    - name: play
      hosts: effe
      gather_facts: false
      connection: network_cli
      tasks:
      - name: backup to tftp
        cli_command:
         command: "copy running-config tftp:"
         check_all: True
         prompt: 
          - "remote host"
          - "filename"
         answer: 
          - "1.5.1.2"
          - "backup-{{ inventory_hostname }}.txt"
...