netapp.ontap.na_ontap_wait_for_condition – NetApp ONTAP wait_for_condition. Loop over a get status request until a condition is met.
netapp.ontap.na_ontap_wait_for_condition – NetApp ONTAP wait_for_condition. Loop over a get status request until a condition is met.
Note
This plugin is part of the netapp.ontap collection (version 20.12.0).
To install it use: ansible-galaxy collection install netapp.ontap
.
To use it in a playbook, specify: netapp.ontap.na_ontap_wait_for_condition
.
New in version 20.8.0: of netapp.ontap
Synopsis
- Loop over an ONTAP get status request until a condition is satisfied.
- Report a timeout error if
timeout
is exceeded while waiting for the condition.
Requirements
The below requirements are needed on the host that executes this module.
- A physical or virtual clustered Data ONTAP system. The modules support Data ONTAP 9.1 and onward.
- REST support requires ONTAP 9.6 or later.
- Ansible 2.6
- Ansible 2.9 or later is strongly recommended as it enables the new collection delivery system.
- Python2 netapp-lib (2017.10.30) or later. Install using ‘pip install netapp-lib’
- Python3 netapp-lib (2018.11.13) or later. Install using ‘pip install netapp-lib’
- netapp-lib 2020.3.12 is strongly recommended as it provides better error reporting for connection issues.
- To enable http on the cluster you must run the following commands ‘set -privilege advanced;’ ‘system services web modify -http-enabled true;’
Parameters
Parameter | Choices/Defaults | Comments |
---|---|---|
attributes dictionary |
a dictionary of custom attributes for the event. for instance,
| |
cert_filepath string added in 20.6.0 of netapp.ontap |
path to SSL client cert file (.pem). not supported with python 2.6. | |
conditions list / elements=string / required |
one or more conditions to match for instance | |
feature_flags dictionary added in 20.5.0 of netapp.ontap |
Enable or disable a new feature. This can be used to enable an experimental feature or disable a new feature that breaks backward compatibility. Supported keys and values are subject to change without notice. Unknown keys are ignored. | |
hostname string / required |
The hostname or IP address of the ONTAP instance. | |
http_port integer |
Override the default port (80 or 443) with this port | |
https boolean |
|
Enable and disable https. Ignored when using REST as only https is supported. Ignored when using SSL certificate authentication as it requires SSL. |
key_filepath string added in 20.6.0 of netapp.ontap |
path to SSL client key file. | |
name string / required |
|
The name of the event to check for. |
ontapi integer |
The ontap api version to use | |
password string |
Password for the specified user.
| |
polling_interval integer |
Default: 5 |
how ofen to check for the conditions, in seconds. |
state string |
|
whether the conditions should be present or absent. if if |
timeout integer |
Default: 180 |
how long to wait for the conditions, in seconds. |
use_rest string |
Default: "auto" |
REST API if supported by the target system for all the resources and attributes the module requires. Otherwise will revert to ZAPI. always -- will always use the REST API never -- will always use the ZAPI auto -- will try to use the REST Api |
username string |
This can be a Cluster-scoped or SVM-scoped account, depending on whether a Cluster-level or SVM-level API is required. For more information, please read the documentation https://mysupport.netapp.com/NOW/download/software/nmsdk/9.4/. Two authentication methods are supported 1. basic authentication, using username and password, 2. SSL certificate authentication, using a ssl client cert file, and optionally a private key file. To use a certificate, the certificate must have been installed in the ONTAP cluster, and cert authentication must have been enabled.
| |
validate_certs boolean |
|
If set to This should only set to |
Notes
Note
- The modules prefixed with na\_ontap are built to support the ONTAP storage platform.
Examples
- name: wait for sp_upgrade in progress
na_ontap_wait_for_condition:
hostname: "{{ ontap_admin_ip }}"
username: "{{ ontap_admin_username }}"
password: "{{ ontap_admin_password }}"
https: true
validate_certs: no
name: sp_upgrade
conditions: is_in_progress
attributes:
node: "{{ node }}"
polling_interval: 30
timeout: 1800
- name: wait for sp_upgrade not in progress
na_ontap_wait_for_condition:
hostname: "{{ ontap_admin_ip }}"
username: "{{ ontap_admin_username }}"
password: "{{ ontap_admin_password }}"
https: true
validate_certs: no
name: sp_upgrade
conditions: is_in_progress
state: absent
attributes:
node: "{{ ontap_admin_ip }}"
polling_interval: 30
timeout: 1800
- name: wait for sp_version to match 3.9
na_ontap_wait_for_condition:
hostname: "{{ ontap_admin_ip }}"
username: "{{ ontap_admin_username }}"
password: "{{ ontap_admin_password }}"
https: true
validate_certs: no
name: sp_version
conditions: firmware_version
state: present
attributes:
node: "{{ ontap_admin_ip }}"
expected_version: 3.9
polling_interval: 30
timeout: 1800
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description |
---|---|---|
last_state string |
always |
last observed state for event
|
states string |
always |
summarized list of observed states while waiting for completion reported for success or timeout error
|
Authors
- NetApp Ansible Team (@carchi8py) <[email protected]>
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/netapp/ontap/na_ontap_wait_for_condition_module.html