Documentation

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 variable ANSIBLE_EDGEOS_TERMINAL_LENGTH is not set, the default number of 10000 is used.

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:
yes
The number of seconds to wait between retries of the command.
match
    Choices:
  • any
  • all ←
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.