$ ansible-doc -t module cisco.sccfm.list_ftd_compatible_versions
> MODULE cisco.sccfm.list_ftd_compatible_versions (sccfm-ansible/plugins/modules/list_ftd_compatible_versions.py)
Queries compatible upgrade versions for one or more FTD devices
managed by SCC Firewall Manager and computes the intersection of
versions common to all selected devices.
Returns version details including software version, upgrade package
UID, upgrade type (UPGRADE, PATCH, HOTFIX), and whether the version
is the suggested upgrade target.
OPTIONS (= indicates it is required):
- api_token API token for SCCFM.
set_via:
env:
- name: SCCFM_API_TOKEN
default: null
no_log: true
type: str
- limit Maximum number of devices to return when using `query'.
Ignored when using `uids'.
default: 50
type: int
- offset Pagination offset when using `query'.
Ignored when using `uids'.
default: 0
type: int
- per_device Whether to include per-device version breakdown in the
output.
When false (default), single-device queries return a
flat list and multi-device queries return only the
common versions.
When true, the full per-device breakdown is included
alongside common versions.
default: false
type: bool
- query Lucene query to filter FTD devices.
Mutually exclusive with `uids'.
The query is automatically combined with FTD device type
filters.
default: null
type: str
- region SCCFM region (int, us, eu, apj, au, uae, in, or ci).
set_via:
env:
- name: SCCFM_REGION
default: null
type: str
- uids List of device UIDs to query.
Mutually exclusive with `query'.
default: null
elements: str
type: list
AUTHOR: Cisco SCCFM Team
EXAMPLES:
# Example 1: Get compatible versions for a single FTD (flat list output)
- name: Get compatible versions for a single FTD
cisco.sccfm.list_ftd_compatible_versions:
uids:
- "12345678-1234-1234-1234-123456789abc"
region: "{{ sccfm_region }}"
api_token: "{{ sccfm_api_token }}"
register: compat_versions
- name: Show compatible versions
ansible.builtin.debug:
var: compat_versions.compatible_versions
# Example 2: Get common versions across a group (intersection)
- name: Get common compatible versions for specific FTDs
cisco.sccfm.list_ftd_compatible_versions:
uids:
- "12345678-1234-1234-1234-123456789abc"
- "87654321-4321-4321-4321-cba987654321"
register: compat_versions
- name: Show common versions
ansible.builtin.debug:
var: compat_versions.common_versions
# Example 3: Include per-device breakdown (opt-in)
- name: Get group versions with per-device details
cisco.sccfm.list_ftd_compatible_versions:
uids:
- "12345678-1234-1234-1234-123456789abc"
- "87654321-4321-4321-4321-cba987654321"
per_device: true
register: compat_versions
- name: Show per-device counts
ansible.builtin.debug:
msg: "Device {{ item.key }}: {{ item.value | length }} version(s)"
loop: "{{ compat_versions.per_device | dict2items }}"
# Example 4: Using module_defaults (recommended)
- name: List FTD compatible versions
hosts: localhost
gather_facts: false
module_defaults:
group/cisco.sccfm.all:
region: "{{ sccfm_region }}"
api_token: "{{ sccfm_api_token }}"
tasks:
- name: Get compatible versions for branch FTDs
cisco.sccfm.list_ftd_compatible_versions:
query: "name:branch-*"
register: compat_versions
RETURN VALUES:
- common_versions Software versions compatible with every selected
FTD device. Returned for multi-device queries or
when `per_device' is true.
elements: dict
returned: success (multi-device or per_device=true)
type: list
- compatible_versions Flat list of compatible versions. Returned for
single-device queries when `per_device' is
false.
elements: dict
returned: success (single device, per_device=false)
type: list
- device_count Number of devices included in the query.
returned: success (multi-device or per_device=true)
type: int
- per_device Per-device compatible version lists keyed by device
UID.
returned: success (only when per_device=true)
type: dict
- skipped FTD device UIDs skipped during eligibility checks, keyed
by UID.
returned: success (check mode or when devices are skipped)
type: dict