如果缺少,可以在IOS设备上添加本地帐户的剧本

问题描述 投票:0回答:1

我正在尝试为Cisco IOS设备创建Ansible剧本,以检查设备上是否存在本地用户帐户。如果存在,则不执行任何操作,但如果不存在,请添加。

下面是我所拥有的,但是我需要条件检查的帮助,即检查寄存器值的最佳方法是什么,如果其中存在rsitadmin,则什么也不做,否则将此命令发送给设备用户名{{user}} secret {{pass}}。

如果缺少缺少的内容,请添加RSITADMIN任务不起作用,但是是我要检查的内容的摘要。

我也使用src参数尝试了这个jinja模板,但没有帮助。

{% 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"
ansible
1个回答
0
投票

这帮了我大忙:

    - 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")
© www.soinside.com 2019 - 2024. All rights reserved.