community.network.enos_command 模块 – 在联想 ENOS 设备上运行任意命令
注意
此模块是 community.network 集合 (版本 5.1.0) 的一部分。
如果您正在使用 ansible
包,则可能已经安装了此集合。它不包含在 ansible-core
中。要检查是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用:ansible-galaxy collection install community.network
。
要在 playbook 中使用它,请指定:community.network.enos_command
。
注意
community.network 集合已被弃用,并将从 Ansible 12 中删除。有关更多信息,请参见讨论线程。
已弃用
- 在以下版本中删除:
版本 6.0.0
- 原因:
此集合及其中的所有内容都未维护且已弃用。
- 替代方案:
未知。
概要
将任意命令发送到 ENOS 节点并返回从设备读取的结果。
enos_command
模块包含一个参数,该参数将使模块在返回之前等待特定条件,如果未满足条件则超时。
别名: network.enos.enos_command
参数
参数 |
注释 |
---|---|
指定在远程设备上进入特权模式时需要使用的密码。如果 authorize 为 false,则此参数不起作用。如果未在任务中指定该值,则将使用环境变量 |
|
指示模块在发送任何命令之前在远程设备上进入特权模式。如果未指定,设备将尝试在非特权模式下执行所有命令。如果未在任务中指定该值,则将使用环境变量 选项
|
|
要通过配置的提供程序发送到远程设备的命令列表。返回命令的输出结果。如果提供了 wait_for 参数,则模块不会返回,直到满足条件或重试次数已过期。 |
|
配置命令重试之间等待的秒数。如果命令未通过指定的条件,则 interval 指示在再次尝试命令之前等待的时间长度。 默认值: |
|
match 参数与 wait_for 参数结合使用,以指定匹配策略。有效值为 选项
|
|
指定在被认为失败之前应尝试命令的重试次数。每次重试都会在目标设备上运行该命令,并根据 wait_for 条件进行评估。 默认值: |
|
针对命令输出评估的条件列表。任务将等待每个条件为真,然后再继续进行。如果在配置的重试次数内条件不为真,则任务失败。请参见示例。 |
示例
---
- name: Test contains operator
community.network.enos_command:
commands:
- show version
- show system memory
wait_for:
- "result[0] contains 'Lenovo'"
- "result[1] contains 'MemFree'"
register: result
- ansible.builtin.assert:
that:
- "result.changed == false"
- "result.stdout is defined"
- name: Get output for single command
community.network.enos_command:
commands: ['show version']
register: result
- ansible.builtin.assert:
that:
- "result.changed == false"
- "result.stdout is defined"
- name: Get output for multiple commands
community.network.enos_command:
commands:
- show version
- show interface information
register: result
- ansible.builtin.assert:
that:
- "result.changed == false"
- "result.stdout is defined"
- "result.stdout | length == 2"
返回值
常见的返回值记录在 此处,以下是此模块独有的字段
键 |
描述 |
---|---|
失败的条件 返回: 失败 示例: |
|
来自命令的一组响应 返回: 始终 示例: |
|
拆分为列表的 stdout 值 返回: 始终 示例: |
状态
此模块将在版本 6.0.0 中删除。 [已弃用]
有关更多信息,请参见 已弃用。