service_element_facts - Facts about service elements in the SMC¶
New in version 2.5.
Synopsis¶
- Service elements can be used as references in many areas of the configuration. This fact module provides the ability to retrieve information related to elements and their values.
Requirements (on host that executes module)¶
- smc-python
Options¶
| parameter | required | default | choices | comments | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| case_sensitive |
no | True |
Whether to do a case sensitive match on the filter specified |
||||||||||||||||
| element |
no | * |
|
Type of service element to retrieve |
|||||||||||||||
| exact_match |
no |
Whether to do an exact match on the filter specified |
|||||||||||||||||
| expand |
no |
|
Optionally expand element attributes that contain only href |
||||||||||||||||
| filter |
no | * |
String value to match against when making query. Matches all if not specified. A filter will attempt to find a match in the name, primary key field or comment field of a given record. |
||||||||||||||||
| limit |
no | 10 |
Limit the number of results. Set to 0 to remove limit. |
||||||||||||||||
| smc_address |
no |
FQDN with port of SMC. The default value is the environment variable |
|||||||||||||||||
| smc_alt_filepath |
no |
Provide an alternate path location to read the credentials from. File is expected to be stored in ~.smcrc. If provided, url and api_key settings are not required and will be ignored. |
|||||||||||||||||
| smc_api_key |
no |
API key for api client. The default value is the environment variable |
|||||||||||||||||
| smc_api_version |
no |
Optional API version to connect to. If none is provided, the latest SMC version API will be used based on the Management Center version. Can be set though the environment variable |
|||||||||||||||||
| smc_domain |
no |
Optional domain to log in to. If no domain is provided, 'Shared Domain' is used. Can be set throuh the environment variable |
|||||||||||||||||
| smc_extra_args |
no |
Extra arguments to pass to login constructor. These are generally only used if specifically requested by support personnel.
| |||||||||||||||||
|
|||||||||||||||||||
| smc_logging |
no |
Optionally enable SMC API logging to a file
| |||||||||||||||||
|
|||||||||||||||||||
| smc_timeout |
no |
Optional timeout for connections to the SMC. Can be set through environment |
|||||||||||||||||
Examples¶
- name: Obtain facts about Service Elements
hosts: localhost
gather_facts: no
tasks:
- name: Retrieve all Service elements
service_element_facts:
- name: Retrieve only TCP Services
service_element_facts:
element: tcp_service
- name: Retrieve only TCP Services with port 8080
service_element_facts:
element: tcp_service
filter: 8080
- name: Retrieve TCP Service with HTTP in name
service_element_facts:
element: tcp_service
filter: HTTP
- name: Retrieve TCP Service group and expand members
service_element_facts:
element: tcp_service_group
filter: mygroup
expand:
- group
Return Values¶
Common return values are documented Return Values, the following are the fields unique to this module:
| name | description | returned | type | sample |
|---|---|---|---|---|
| services |
All TCP services with filter of '80'
|
always | list | [{'comment': '', 'max_dst_port': None, 'type': 'tcp_service', 'name': 'tcp80443', 'min_dst_port': 443}, {'comment': 'Element created for NAT Service', 'max_dst_port': None, 'type': 'tcp_service', 'name': 'HTTP_tcp_port_80', 'min_dst_port': 80}] |
Notes¶
Note
- If a filter is not used in the query, this will return all results for the element type specified. The return data in this case will only contain the metadata for the element which will be name and type. To get detailed information about an element, use a filter. When using filters on network or service elements, the filter value will search the element fields, for example, you could use a filter of ‘1.1.1.1’ when searching for hosts and all hosts with this IP will be returned. The same applies for services. If you are unsure of the service name but know the port you require, your filter can be by port.