Ansible playbook для добавления локальной учетной записи на устройстве IOS, если отсутствует - PullRequest
0 голосов
/ 01 ноября 2019

Я пытаюсь создать Ansible playbook для устройства Cisco IOS, чтобы проверить, существует ли локальная учетная запись пользователя на устройстве. Если он существует, ничего не делать, но если его нет, я хочу добавить его.

Ниже приведено то, что у меня есть, но мне нужна помощь с условной проверкой, т.е. как лучше всего проверить значение регистра, если в нем присутствует rsitadmin, ничего не делайте, иначе отправьте эту команду на имя пользователя устройства {{user}} secret {{pass}}.

Задача Добавить RSITADMIN, если отсутствует, не работает, но это краткое изложение того, что я хочу проверить.

Я также пробовал этот шаблон jinja с параметром src, но это не помогло.

{% if 'rsitadmin' in ACCOUNT %}
{% else %}
 username {{user}} secret {{pass}}
{% endif %}
---
- name: Add RSITADMIN Account if missing
  hosts: LAB
  vars_files:
    - rsitadmin.yml
  gather_facts: false
  connection: local

  tasks:
    - name: Check if RSITADMIN account exist
      ios_command:
        commands: sh run | s username rsitadmin
      register: ACCOUNT

    - name: Print RSITADMIN account details
      debug:
          var=ACCOUNT.stdout

    - name: Add RSITADMIN if missing
      ios_config:
        lines: username {{user}} secret {{pass}}
      when: "'rsitadmin' in ACCOUNT"

1 Ответ

0 голосов
/ 04 ноября 2019

Это помогло мне:

    - name: Configure RSITADMIN Account on devices its missing
      ios_config:
        lines:
          - username {{user}} secret {{pass}}
        save_when: changed
      when: ACCOUNT.stdout[0] is not search ("username rsitadmin")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...