paloaltonetworks.panos.panos_op module – execute arbitrary OP commands on PANW devices (e.g. show interface all)

Note

This module is part of the paloaltonetworks.panos collection (version 2.21.2).

To install it, use: ansible-galaxy collection install paloaltonetworks.panos. You need further requirements to be able to use this module, see Requirements for details.

To use it in a playbook, specify: paloaltonetworks.panos.panos_op.

New in paloaltonetworks.panos 1.0.0

Synopsis

  • This module will allow user to pass and execute any supported OP command on the PANW device.

Requirements

The below requirements are needed on the host that executes this module.

Parameters

Parameter

Comments

api_key

string

Deprecated

Use provider to specify PAN-OS connectivity instead.


The API key to use instead of generating it using username / password.

cmd

string / required

The OP command to be performed.

cmd_is_xml

boolean

The cmd is already given in XML format, so don’t convert it.

Choices:

ignore_disconnect

boolean

Some op commands disconnect the client before returning a response.

Enable this to prevent this module from erroring out if the command could cause this.

If running such a command, you can use paloaltonetworks.panos.panos_check to wait for PAN-OS to be accessible.

Choices:

ip_address

string

Deprecated

Use provider to specify PAN-OS connectivity instead.


The IP address or hostname of the PAN-OS device being configured.

password

string

Deprecated

Use provider to specify PAN-OS connectivity instead.


The password to use for authentication. This is ignored if api_key is specified.

port

integer

Deprecated

Use provider to specify PAN-OS connectivity instead.


The port number to connect to the PAN-OS device on.

Default: :ansible-option-default:`443`

provider

dictionary

added in paloaltonetworks.panos 1.0.0

A dict object containing connection details.

api_key

string

The API key to use instead of generating it using username / password.

ip_address

string

The IP address or hostname of the PAN-OS device being configured.

password

string

The password to use for authentication. This is ignored if api_key is specified.

port

integer

The port number to connect to the PAN-OS device on.

Default: :ansible-option-default:`443`

serial_number

string

The serial number of a firewall to use for targeted commands. If ip_address is not a Panorama PAN-OS device, then this param is ignored.

username

string

The username to use for authentication. This is ignored if api_key is specified.

Default: :ansible-option-default:`"admin"`

username

string

Deprecated

Use provider to specify PAN-OS connectivity instead.


The username to use for authentication. This is ignored if api_key is specified.

Default: :ansible-option-default:`"admin"`

vsys

string

The vsys target where the OP command will be performed.

Default: :ansible-option-default:`"vsys1"`

Notes

Note

  • Checkmode is NOT supported.

  • Panorama is supported.

  • PAN-OS connectivity should be specified using provider or the classic PAN-OS connectivity params (ip_address, username, password, api_key, and port). If both are present, then the classic params are ignored.

Examples

- name: show list of all interfaces
  paloaltonetworks.panos.panos_op:
    provider: '{{ provider }}'
    cmd: 'show interfaces all'

- name: show system info
  paloaltonetworks.panos.panos_op:
    provider: '{{ provider }}'
    cmd: 'show system info'

- name: show system info as XML command
  paloaltonetworks.panos.panos_op:
    provider: '{{ provider }}'
    cmd: '<show><system><info/></system></show>'
    cmd_is_xml: true

- name: set serial number with error ignore
  paloaltonetworks.panos.panos_op:
    provider: '{{ provider }}'
    cmd: 'set serial-number "123456"'
    ignore_disconnect: true

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key

Description

disconnected

boolean

If a disconnect was ignored or not.

Returned: success

Sample: :ansible-rv-sample-value:`true`

stdout

string

output of the given OP command as JSON formatted string

Returned: success

Sample: :ansible-rv-sample-value:`"{system: {app-release-date: 2017/05/01 15:09:12}}"`

stdout_xml

string

output of the given OP command as an XML formatted string

Returned: success

Sample: :ansible-rv-sample-value:`"\<response status=success\>\<result\>\<system\>\<hostname\>fw2\</hostname\>"`

Authors

  • Ivan Bojer (@ivanbojer)

  • Garfield Lee Freeman (@shinmog)