edgeos_command - Run one or more commands on EdgeOS devices
New in version 2.5.
Synopsis
- This command module allows running one or more commands on a remote device running EdgeOS, such as the Ubiquiti EdgeRouter.
- This module does not support running commands in configuration mode.
- Certain
show
commands in EdgeOS produce many lines of output and use a custom pager that can cause this module to hang. If the value of the environment variableANSIBLE_EDGEOS_TERMINAL_LENGTH
is not set, the default number of 10000 is used. - This is a network module and requires
connection: network_cli
in order to work properly. - For more information please see the Network Guide.
Parameters
Parameter | Choices/Defaults | Comments |
---|---|---|
commands required | The commands or ordered set of commands that should be run against the remote device. The output of the command is returned to the playbook. If the wait_for argument is provided, the module is not returned until the condition is met or the number of retries is exceeded. | |
interval | Default: 1 | The number of seconds to wait between retries of the command. |
match |
| Used in conjunction with wait_for to create match policy. If set to all , then all conditions in wait_for must be met. If set to any , then only one condition must match. |
retries | Default: 10 | Number of times a command should be tried before it is considered failed. The command is run on the target device and evaluated against the wait_for conditionals. |
wait_for | Causes the task to wait for a specific condition to be met before moving forward. If the condition is not met before the specified number of retries is exceeded, the task will fail. |
Notes
Note
- Tested against EdgeOS 1.9.7
- Running
show system boot-messages all
will cause the module to hang since EdgeOS is using a custom pager setting to display the output of that command.
Examples
tasks: - name: Reboot the device edgeos_command: commands: reboot now - name: Show the configuration for eth0 and eth1 edgeos_command: commands: show interfaces ethernet {{ item }} loop: - eth0 - eth1
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description |
---|---|---|
stdout list | always apart from low level errors (such as action plugin) | The set of responses from the commands Sample: ['...', '...'] |
stdout_lines list | always | The value of stdout split into a list Sample: [['...', '...'], ['...'], ['...']] |
Status
This module is flagged as preview which means that it is not guaranteed to have a backwards compatible interface.
Author
- Chad Norgan (@BeardyMcBeards)
- Sam Doran (@samdoran)
Hint
If you notice any issues in this documentation you can edit this document to improve it.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.5/modules/edgeos_command_module.html