1[![Documentation](https://img.shields.io/badge/docs-brightgreen.svg)](https://docs.ansible.com/ansible/devel/collections/netapp/ontap/index.html) 2![example workflow](https://github.com/ansible-collections/netapp.ontap/actions/workflows/main.yml/badge.svg) 3[![codecov](https://codecov.io/gh/ansible-collections/netapp.ontap/branch/main/graph/badge.svg?token=weBYkksxSi)](https://codecov.io/gh/ansible-collections/netapp.ontap) 4 5============================================================= 6 7 netapp.ontap 8 9 NetApp ONTAP Collection 10 11 Copyright (c) 2021 NetApp, Inc. All rights reserved. 12 Specifications subject to change without notice. 13 14============================================================= 15# Installation 16```bash 17ansible-galaxy collection install netapp.ontap 18``` 19To use this collection, add the following to the top of your playbook, without this you will be using Ansible 2.9 version of the module 20``` 21collections: 22 - netapp.ontap 23``` 24# Requirements 25- ansible version >= 2.9 26- requests >= 2.20 27- netapp-lib version >= 2018.11.13 28 29# Module documentation 30https://docs.ansible.com/ansible/devel/collections/netapp/ontap/ 31 32# Need help 33Join our Slack Channel at [Netapp.io](http://netapp.io/slack) 34 35# Release Notes 36 37## 21.12.0 38 39### Minor Changes 40 - na_ontap_firewall_policy - added `none` as a choice for `service` which is supported from 9.8 ONTAP onwards. 41 42### New Options 43 - na_ontap_svm - new option `max_volumes`. 44 45### Bug Fixes 46 - na_ontap_job_schedule - fix idempotency issue with ZAPI when job_minutes is set to -1. 47 - na_ontap_job_schedule - cannot modify options not present in create when using REST. 48 - na_ontap_job_schedule - modify error if month is present but not changed with 0 offset when using REST. 49 - na_ontap_job_schedule - modify error if month is changed from some values to all (-1) when using REST. 50 - na_ontap_svm - support `allowed protocols` with REST for ONTAP 9.6 and later. 51 - na_ontap_vserver_delete role - fix typos for cifs. 52 53### Added REST support to existing modules 54 - na_ontap_cluster - Added REST support to the cluster module. 55 56## 21.11.0 57 58### New Options 59 - na_ontap_interface - new option `from_name` to rename an interface. 60 - na_ontap_software_update - new option `validate_after_download` to run ONTAP software update validation checks. 61 - na_ontap_svm - new option `services` to allow and/or enable protocol services when using REST. 62 - na_ontap_svm - new option `ignore_rest_unsupported_options` to ignore older ZAPI options not available in REST. 63 64### Minor Changes 65 - na_ontap_software_update - remove `absent` as a choice for `state` as it has no use. 66 - na_ontap_svm - ignore `aggr_list: '*'` when using REST. 67 68### Bug Fixes 69 - na_ontap_job_schedule - fix idempotency issue with REST when job_minutes is set to -1. 70 - na_ontap_ldap_client - remove limitation on schema so that custom schemas can be used. 71 72### Added REST support to existing modules 73 - na_ontap_ntp - Added REST support to the ntp module. 74 75## 21.10.0 76 77### Minor Changes 78 - na_ontap_cifs_server - ``force`` option is supported when state is absent to ignore communication errors. 79 80### Bug Fixes 81 - na_ontap_vserver_delete role - delete iSCSI igroups and CIFS server before deleting vserver. 82 - all modules - traceback on ONTAP 9.3 (and earlier) when trying to detect REST support. 83 84 85## 21.9.0 86 87### Minor Changes 88 - na_ontap_rest_info - The Default for `gather_subset` has been changed to demo which returns `cluster/software`, `svm/svms`, `cluster/nodes`. To return all Info must specifically list `all` in your playbook. Do note `all` is a very resource-intensive action and it is highly recommended to call just the info/APIs you need. 89 - na_ontap_rest_info - added file_directory_security to return the effective permissions of the directory. When using file_directory_security it must be called with gather_subsets and path and vserver must be specified in parameters. 90 91### New Options 92 - na_ontap_job_schedule - new option `month_offset` to explictly select 0 or 1 for January. 93 - na_ontap_object_store - new options `port`, `certificate_validation_enabled`, `ssl_enabled` for target server. 94 - na_ontap_rest_info - new option `use_python_keys` to replace `svm/svms` with `svm_svms` to simplify post processing. 95 96### Added REST support to existing modules 97 - na_ontap_snmp - Added REST support to the SNMP module 98 - na_ontap_rest_info - All Info that exist in `na_ontap_info` that has REST equivalents have been implemented. Note that the returned structure for REST and the variable names in the structure is different from the ZAPI based `na_ontap_info`. Some default variables in ZAPI are no longer returned by default in REST and will need to be specified using the `field` option 99 - na_ontap_rest_info - The following info's have been added `system_node_info`, `net_interface_info`, `net_port_info`, `security_login_account_info`, `vserver_peer_info`, `cluster_image_info`, `cluster_log_forwarding_info`, `metrocluster_info`, `metrocluster_node_info`, `net_dns_info`, `net_interface_service_policy_info`, `vserver_nfs_info`, `clock_info`, `igroup_info`, `vscan_status_info`, `vscan_connection_status_all_info`, `storage_bridge_info`, `nvme_info`, `nvme_interface_info`, `nvme_subsystem_info`, `cluster_switch_info`, `export_policy_info`, `kerberos_realm_info`,`sis_info`, `sis_policy_info`, `snapmirror_info`, `snapmirror_destination_info`, `snapmirror_policy_info`, `sys_cluster_alerts`, `cifs_vserver_security_info` 100 101### Bug Fixes 102 - na_ontap_job_schedule - fix documentation for REST ranges for months. 103 - na_ontap_quotas - attempt a retry on `13001:success` ZAPI error. Add debug data. 104 - na_ontap_object_store - when using REST, wait for job status to correctly report errors. 105 - na_ontap_rest_cli - removed incorrect statement indicating that console access is required. 106 107## 21.8.1 108 109### Bug Fixes 110 - all REST modules: 9.4 and 9.5 were incorrectly detected as supporting REST. 111 - na_ontap_snapmirror: improve error message when option is not supported with ZAPI. 112 113## 21.8.0 114 115### New Modules 116 - na_ontap_cifs_local_user_set_password - set local user password - ZAPI only. 117 - na_ontap_fdsd - add or remove File Directory Security Descriptor - REST only. 118 - na_ontap_fdsp - create or delete a File Directory Security Policy - REST only. 119 - na_ontap_fdspt - add, remove or modify a File Directory Security Policy Task - REST only. 120 - na_ontap_fdss - apply security policy settings to files and directories in a vserver. 121 - na_ontap_partitions - assign/unassign disk partitions - REST only. 122 123### New role 124 - na_ontap_vserver_delete - delete vserver and all associated data and resources - REST only. 125 126### New Options 127 - na_ontap_cluster_peer - new option `peer_options` to use different credentials on peer. 128 - na_ontap_net_port - new option `up_admin` to set administrative state. 129 - na_ontap_snapshot - new option `expiry_time`. 130 - na_ontap_vserver_peer - new option `peer_options` to use different credentials on peer. 131 132### Added REST support to existing modules 133 - na_ontap_snapshot - added REST support for snapshot creation, modification & deletion. 134 135### Bug Fixes 136 - na_ontap_cluster_peer - KeyError on dest_cluster_name if destination is unreachable. 137 - na_ontap_cluster_peer - KeyError on username when using certicate. 138 - na_ontap_export_policy_rule - change `anonymous_user_id` type to str to accept user name and user id. (A warning is now triggered when a number is not quoted.) 139 - na_ontap_vserver_peer - KeyError on username when using certicate. 140 - na_ontap_volume_clone - `parent_vserver` can not be given with `junction_path`, `uid`, or `gid` 141 - all modules - fix traceback TypeError 'NoneType' object is not subscriptable when hostname points to a web server. 142 143### Minor Changes 144 - na_ontap_debug - additional checks when REST is available to help debug vserver connectivity issues. 145 - na_ontap_net_port - change option types to bool and int respectively for `autonegotiate_admin` and `mtu`. 146 - na_ontap_rest_info - add examples for ``parameters`` option. 147 - na_ontap_volume - show warning when resize is ignored because threshold is not reached. 148 [WARNING]: resize request ignored: 2.5% is below the threshold: 10% 149 - na_ontap_vserver_create role - add `nfsv3`, `nfsv4`, `nfsv41` options. 150 - na_ontap_flexcache - corrected module name in documentation Examples 151 152## 21.7.0 153 154### New Modules 155 - na_ontap_publickey - add/remove/modify public keys for SSH authentication - REST only. 156 - na_ontap_service_policy - add/remove/modify service policies for IP interfaces - REST only. 157 158### New Options 159 - na_ontap_cifs - new option `comment` to associate a description to a CIFS share. 160 - na_ontap_disks - new option `min_spares`. 161 - na_ontap_lun - new suboption `exclude_aggregates` for SAN application. 162 - na_ontap_volume - new suboption `exclude_aggregates` for NAS application. 163 164### Minor Changes 165 - na_ontap_disks - added REST support for the module. 166 - na_ontap_disks - added functionality to reassign spare disks from a partner node to the desired node. 167 - na_ontap_igroups - nested igroups are not supported on ONTAP 9.9.0 but are on 9.9.1. 168 - License displayed correctly in Github 169 170### Bug Fixes 171 - na_ontap_iscsi_security - cannot change authentication_type 172 - na_ontap_iscsi_security - IndexError list index out of range if vserver does not exist 173 174## 21.6.1 175 176### Bug Fixes 177 - na_ontap_autosupport - KeyError: No element by given name validate-digital-certificate. 178 - na_ontap_flexcache - one occurrence of msg missing in call to fail_json. 179 - na_ontap_igroup - one occurrence of msg missing in call to fail_json. 180 - na_ontap_lun - three occurrencse of msg missing in call to fail_json. 181 - na_ontap_lun_map_reporting_nodes - one occurrence of msg missing in call to fail_json. 182 - na_ontap_snapmirror - one occurrence of msg missing in call to fail_json. 183 184## 21.6.0 185 186### New Options 187 - na_ontap_users - new option `application_dicts` to associate multiple authentication methods to an application. 188 - na_ontap_users - new option `application_strs` to disambiguate `applications`. 189 - na_ontap_users - new option `replace_existing_apps_and_methods`. 190 - na_ontap_users - new suboption `second_authentication_method` with `application_dicts` option. 191 - na_ontap_vserver_peer - new options `local_name_for_source` and `local_name_for_peer` added. 192 193### Minor changes 194 - na_ontap_rest_info - Added "autosupport_check_info"/"support/autosupport/check" to the attributes that will be collected when gathering info using the module. 195 196### Bug Fixes 197 - na_ontap_autosupport - TypeError - '>' not supported between instances of 'str' and 'list'. 198 - na_ontap_quotas - fail to reinitialize on create if quota is already on. 199 200## 21.5.0 201 202### New Options 203 - na_ontap_autosupport - new option 'nht_data_enabled' to specify whether the disk health data is collected as part of the AutoSupport data. 204 - na_ontap_autosupport - new option 'perf_data_enabled' to specify whether the performance data is collected as part of the AutoSupport data. 205 - na_ontap_autosupport - new option 'retry_count' to specify the maximum number of delivery attempts for an AutoSupport message. 206 - na_ontap_autosupport - new option 'reminder_enabled' to specify whether AutoSupport reminders are enabled or disabled. 207 - na_ontap_autosupport - new option 'max_http_size' to specify delivery size limit for the HTTP transport protocol (in bytes). 208 - na_ontap_autosupport - new option 'max_smtp_size' to specify delivery size limit for the SMTP transport protocol (in bytes). 209 - na_ontap_autosupport - new option 'private_data_removed' to specify the removal of customer-supplied data. 210 - na_ontap_autosupport - new option 'local_collection_enabled' to specify whether collection of AutoSupport data when the AutoSupport daemon is disabled. 211 - na_ontap_autosupport - new option 'ondemand_enabled' to specify whether the AutoSupport OnDemand Download feature is enabled. 212 - na_ontap_autosupport - new option 'validate_digital_certificate' which when set to true each node will validate the digital certificates that it receives. 213 214### Added REST support to existing modules 215 - na_ontap_autosupport - added REST support for ONTAP autosupport modification. 216 217### Bug Fixes 218 - na_ontap_qtree - wait for completion when creating or modifying a qtree with REST. 219 - na_ontap_volume - ignore read error because of insufficient privileges for efficiency options so that the module can be run as vsadmin. 220 221### Minor changes 222 - na_ontap_info - Added "autosupport_check_info" to the attributes that will be collected when gathering info using the module. 223 224## 21.4.0 225 226### New Modules 227 - na_ontap_cifs_local_user_modify: Modify a local CIFS user. 228 - na_ontap_disk_options: Modify storage disk options. 229 - na_ontap_fpolicy_event: Create, delete or modify an FPolicy policy event. 230 - na_ontap_fpolicy_ext_engine: Create, modify or delete an fPolicy External Engine. 231 - na_ontap_fpolicy_scope: Create, delete or modify an FPolicy policy scope. 232 - na_ontap_fpolicy_status: Enable or disable an existing fPolicy policy. 233 - na_ontap_snaplock_clock: Initialize snaplock compliance clock. 234 235### New Options 236 - na_ontap_igroups - new option `initiator_objects` to support initiator comments (requires ONTAP 9.9). 237 - na_ontap_igroups - new option `initiator_names` as a replacement for `initiators` (still supported as an alias). 238 239### Minor changes 240 - na_ontap_lun - allow new LUNs to use different igroup or os_type when using SAN application. 241 - na_ontap_lun - ignore small increase (lower than provisioned) and small decrease (< 10%) in `total_size`. 242 - na_ontap_volume_efficiency - updated to now allow for storage efficiency start and storage efficiency stop. 243 244### Bug fixes 245 - na_ontap_autosupport - warn when password is present in `proxy_url` as it makes the operation not idempotent. 246 - na_ontap_cluster - ignore ZAPI EMS log error when in pre-cluster mode. 247 - na_ontap_lun - SAN application is not supported on 9.6 and only partially supported on 9.7 (no modify). 248 - na_ontap_svm - iscsi current status is not read correctly (mispelled issi). 249 - na_ontap_volume - warn when attempting to modify application only options. 250 251## 21.3.1 252 253### Bug fixes 254 - na_ontap_snapmirror: check for consistency_group_volumes always fails on 9.7, and cluster or ipspace when using endpoints with ZAPI. 255 256## 21.3.0 257 258### New Modules 259 - na_ontap_domain_tunnel: Create, delete or modify the domain tunnel. 260 - na_ontap_storage_failover: Enables and disables storage failover. 261 - na_ontap_security_config: Modify the security configuration for SSL. 262 - na_ontap_storage_auto_giveback: Enables and disables storage auto giveback. 263 - na_ontap_fpolicy_policy: Create, delete or modify an fpolicy policy 264 265### New Options 266 - na_ontap_flexcache - support for `prepopulate` option when using REST (requires ONTAP 9.8). 267 - na_ontap_igroups - new option `igroups` to support nested igroups (requires ONTAP 9.9). 268 - na_ontap_ldap_client - `tcp_port` replaces `port`. 269 - na_ontap_volume - new suboption `dr_cache` when creating flexcache using NAS application template (requires ONTAP 9.9). 270 271### Minor changes 272 - na_ontap_debug - improve error reporting for import errors on netapp_lib. 273 - na_ontap_flexcache - mount/unmount the FlexCache volume when using REST. 274 - na_ontap_info - improve error reporting for import errors on netapp_lib, json, xlmtodict. 275 276### Added REST support to existing modules 277 - na_ontap_flexcache - added REST support for ONTAP FlexCache creation and deletion. 278 - na_ontap_node - added REST support for Node modify and rename. 279 - na_ontap_snapmirror - SVM scoped policies were not found when using a destination path with REST application. 280 281### Bug fixes 282 - na_ontap_ldap_client - `port` was incorrectly used instead of `tcp_port`. 283 - na_ontap_motd - added warning for deprecated and to use na_ontap_login_messages module. 284 - na_ontap_node - KeyError fix for location and asset-tag. 285 - na_ontap_volume - changes in `encrypt` settings were ignored. 286 - na_ontap_volume - unmount volume before deleting it when using REST. 287 - na_ontap_volume_efficiency - `policy` updated to allow for supported '-' as a valid entry. 288 - na_ontap_volume_efficiency - to allow for FAS ONTAP systems to enable volume efficiency. 289 - na_ontap_volume_efficiency - to allow for FAS ONTAP systems to enable volume efficiency and apply parameters in one execution. 290 291## 21.2.0 292 293### New Modules 294 - na_ontap_cifs_local_group_member: Add or remove CIFS local group member 295 - na_ontap_volume_efficiency: Enables, disables or modifies volume efficiency 296 - na_ontap_log_forward: Create, delete or modify the log forward configuration 297 - na_ontap_lun_map_reporting_nodes: Add and remove lun map reporting nodes 298 299### New Options 300 - na_ontap_lun - new option `comment`. 301 - na_ontap_lun - new option `qos_adaptive_policy_group`. 302 - na_ontap_lun - new option `scope` to explicitly force operations on the SAN application or a single LUN. 303 - na_ontap_node - added modify function for location and asset tag for node. 304 - na_ontap_snapmirror - new options `source_endpoint` and `destination_endpoint` to group endpoint suboptions. 305 - na_ontap_snapmirror - new suboptions `consistency_group_volumes` and `ipspace` to endpoint options. 306 307### Minor changes 308 - na_ontap_lun - convert existing LUNs and supporting volume to a smart container within a SAN application. 309 - na_ontap_snapmirror - improve error reporting or warn when REST option is not supported. 310 - na_ontap_snapmirror - deprecate older options for source and destination paths, volumes, vservers, and clusters. 311 - na_ontap_snapmirror - report warning when relationship is present but not healthy. 312 313### Bug fixes 314 - na_ontap_igroup - report error when attempting to modify an option that cannot be changed. 315 - na_ontap_lun - `qos_policy_group` could not be modified if a value was not provided at creation. 316 - na_ontap_lun - `tiering` options were ignored in san_application_template. 317 - na_ontap_volume - returns an error now if deleting a volume with REST api fails. 318 - na_ontap_volume - report error from resize operation when using REST. 319 320### Added REST support to existing modules 321 - na_ontap_igroup - added REST support for ONTAP igroup creation, modification, and deletion. 322 323## 21.1.1 324 325### Bug fixes 326 - All REST modules: ONTAP 9.4 and 9.5 are incorrectly detected as supporting REST with `use_rest: auto`. 327 328## 21.1.0 329 330### New Modules 331 - na_ontap_debug: Diagnose netapp-lib import errors and provide useful information. 332 333### New Options 334 - na_ontap_cluster - `time_out` to wait for cluster creation, adding and removing a node. 335 - na_ontap_debug - connection diagnostics added for invalid ipaddress and DNS hostname errors. 336 - na_ontap_lun - `total_size` and `total_size_unit` when using SAN application template. 337 - na_ontap_snapmirror - `create_destination` to automatically create destination endpoint (ONTAP 9.7). 338 - na_ontap_snapmirror - `destination_cluster` to automatically create destination SVM for SVM DR (ONTAP 9.7). 339 - na_ontap_snapmirror - `source_cluster` to automatically set SVM peering (ONTAP 9.7). 340 341### Minor changes 342 - na_ontap_firmware_upgrade - Added a new 'storage' type as default firmware_type. 343 - na_ontap_info - deprecate ``state`` option. 344 - na_ontap_lun - support increasing lun_count and total_size when using SAN application template. 345 - na_ontap_quota - allow to turn quota on/off without providing quota_target or type. 346 - na_ontap_rest_info - deprecate ``state`` option. 347 - na_ontap_snapmirror - use REST API for create action if target supports it. (ZAPIs are still used for all other actions). 348 - na_ontap_volume - use REST API for delete operation if targets supports it. 349 - general - improve error reporting when older version of netapp-lib is used. 350 351### Bug fixes 352 - na_ontap_lun - REST expects 'all' for tiering policy and not 'backup'. 353 - na_ontap_quotas - Handle blank string idempotency issue for ``quota_target`` in quotas module. 354 - na_ontap_rest_info - ``changed`` was set to "False" rather than boolean False. 355 - na_ontap_snapmirror - report error when attempting to change relationship_type. 356 - na_ontap_snapmirror - fix job update failures for load_sharing mirrors. 357 - na_ontap_snapmirror - wait up to 5 minutes for abort to complete before issuing a delete. 358 - na_ontap_snmp - SNMP module wrong access_control issue and error handling fix. 359 - na_ontap_volume - REST expects 'all' for tiering policy and not 'backup'. 360 - na_ontap_volume - detect and report error when attempting to change FlexVol into FlexGroup. 361 - na_ontap_volume - report error if ``aggregate_name`` option is used with a FlexGroup. 362 363## 20.12.0 364 365### New Options 366 - na_ontap_igroup - new option `os_type` to replace `ostype` (but ostype is still accepted). 367 - na_ontap_info - new fact: cifs_options_info. 368 - na_ontap_info - new fact: cluster_log_forwarding_info. 369 - na_ontap_info - new fact: event_notification_destination_info. 370 - na_ontap_info - new fact: event_notification_info. 371 - na_ontap_info - new fact: security_login_role_config_info. 372 - na_ontap_info - new fact: security_login_role_info. 373 - na_ontap_lun - new option `from_name` to rename a LUN. 374 - na_ontap_lun - new option `os_type` to replace `ostype` (but ostype is still accepted), and removed default to `image`. 375 - na_ontap_lun - new option `qos_policy_group` to assign a qos_policy_group to a LUN. 376 - na_ontap_lun - new option `san_application_template` to create LUNs without explicitly creating a volume and using REST APIs. 377 - na_ontap_qos_policy_group - new option `is_shared` for sharing QOS SLOs or not. 378 - na_ontap_quota_policy - new option `auto_assign` to assign quota policy to vserver. 379 - na_ontap_quotas - new option `activate_quota_on_change` to resize or reinitialize quotas. 380 - na_ontap_quotas - new option `perform_user_mapping` to perform user mapping for the user specified in quota-target. 381 - na_ontap_rest_info - Support for gather subsets: `cifs_home_directory_info, cluster_software_download, event_notification_info, event_notification_destination_info, security_login_info, security_login_rest_role_info` 382 - na_ontap_svm - warning for `aggr_list` wildcard value(`*`) in create\modify idempotency. 383 - na_ontap_volume - `compression` to enable compression on a FAS volume. 384 - na_ontap_volume - `inline-compression` to enable inline compression on a volume. 385 - na_ontap_volume - `nas_application_template` to create a volume using nas application REST API. 386 - na_ontap_volume - `size_change_threshold` to ignore small changes in volume size. 387 - na_ontap_volume - `sizing_method` to resize a FlexGroup using REST. 388 389### Bug fixes 390 - na_ontap_broadcast_domain_ports - properly report check_mode `changed`. 391 - na_ontap_cifs - fix for AttributeError - 'NoneType' object has no attribute 'get' on line 300 392 - na_ontap_user - application parameter expects only ``service_processor`` but module supports ``service-processor``. 393 - na_ontap_volume - change in volume type was ignored and now reporting an error. 394 - na_ontap_volume - checking for success before failure lead to 'NoneType' object has no attribute 'get_child_by_name' when modifying a Flexcache volume. 395 396## 20.11.0 397 398### New Modules 399 - na_ontap_metrocluster_dr_group: Configure a Metrocluster DR group (Supports ONTAP 9.8+) 400 401### Minor changes 402 - na_ontap_cifs - output `modified` if a modify action is taken. 403 - na_ontap_cluster_peer: optional parameter 'ipspace' added for cluster peer. 404 - na_ontap_info - do not require write access privileges. This also enables other modules to work in check_mode without write access permissions. 405 - na_ontap_lun - support modify for space_allocation and space_reserve. 406 - na_ontap_mcc_mediator - improve error reporting when REST is not available. 407 - na_ontap_metrocluster - improve error reporting when REST is not available. 408 - na_ontap_wwpn_alias - improve error reporting when REST is not available. 409 - na_ontap_software_update - add `force_update` option to ignore current version. 410 - na_ontap_svm - output `modified` if a modify action is taken. 411 - all ZAPI modules - optimize Basic Authentication by adding Authorization header proactively. 412 - This can be disabled by setting the `classic_basic_authorization` feature_flag to True. 413 414### Bug fixes 415 - All REST modules, will not fail if a job fails 416 - na_ontap_cifs - fix idempotency issue when `show-previous-versions` is used. 417 - na_ontap_firmware_upgrade - fix ValueError issue when processing URL error. 418 - na_ontap_info - Use `node-id` as key rather than `current-version`. 419 - na_ontap_ipspace - invalid call in error reporting (double error). 420 - na_ontap_lun - `use_exact_size` to create a lun with the exact given size so that the lun is not rounded up. 421 - na_ontap_metrocluster: Fix issue where module would fail on waiting for rest api job 422 - na_ontap_software_update - module is not idempotent. 423 424## 20.10.0 425 426### New Options 427- na_ontap_rest_info: Support for gather subsets - `application_info, application_template_info, autosupport_config_info , autosupport_messages_history, ontap_system_version, storage_flexcaches_info, storage_flexcaches_origin_info, storage_ports_info, storage_qos_policies, storage_qtrees_config, storage_quota_reports, storage_quota_policy_rules, storage_shelves_config, storage_snapshot_policies, support_ems_config, support_ems_events, support_ems_filters` 428 429### Bug fixes 430- na_ontap_aggregate: support concurrent actions for rename/modify/add_object_store and create/add_object_store. 431- na_ontap_cluster: `single_node_cluster` option was ignored. 432- na_ontap_info: better reporting on KeyError traceback, option to ignore error. 433- na_ontap_info: KeyError on `tree` for quota_report_info. 434- na_ontap_snapmirror_policy: report error when attempting to change `policy_type` rather than taking no action. 435- na_ontap_volume: `encrypt: false` is ignored when creating a volume. 436 437## 20.9.0 438 439### New Modules 440- na_ontap_active_directory: configure active directory. 441- na_ontap_mcc_mediator: Configure a MCC Mediator (Supports ONTAP 9.8+). 442- na_ontap_metrocluster: Configure a metrocluster (Supports ONTAP 9.8+). 443 444### New Options 445- na_ontap_cluster: `node_name` to set the node name when adding a node, or as an alternative to `cluster_ip_address` to remove a node. 446- na_ontap_cluster: `state` can be set to `absent` to remove a node identified with `cluster_ip_address` or `node_name`. 447- na_ontap_qtree: `wait_for_completion` and `time_out` to wait for qtree deletion when using REST. 448- na_ontap_quotas: `soft_disk_limit` and `soft_file_limit` for the quota target. 449- na_ontap_rest_info: Support for gather subsets - `initiator_groups_info, san_fcp_services, san_iscsi_credentials, san_iscsi_services, san_lun_maps, storage_luns_info, storage_NVMe_namespaces.` 450 451### Bug fixes 452- na_ontap_cluster: `check_mode` is now working properly. 453- na_ontap_interface: `home_node` is not required in pre-cluster mode. 454- na_ontap_interface: `role` is not required if `service_policy` is present and ONTAP version is 9.8. 455- na_ontap_interface: traceback in get_interface if node is not reachable. 456- na_ontap_job_schedule: allow 'job_minutes' to set number to -1 for job creation with REST too. 457- na_ontap_qtree: fixed `None is not subscriptable` exception on rename operation. 458- na_ontap_volume: fixed `KeyError` exception on `size` when reporting creation error. 459- na_ontap_*: change version_added: '2.6' to version_added: 2.6.0 where applicable to satisfy sanity checker. 460- netapp.py: uncaught exception (traceback) on zapi.NaApiError. 461 462## 20.8.0 463 464### New Modules 465- na_ontap_file_directory_policy: create, modify, delete vserver security file directory policy/task. 466- na_ontap_ssh_command: send CLI command over SSH using paramiko for corner cases where ZAPI or REST are not yet ready. 467- na_ontap_wait_for_condition: wait for event to be present or absent (currently sp_upgrade/in_progress and sp_version). 468 469### New Options 470- na_ontap_aggregate: support `disk_size_with_unit` option. 471- na_ontap_ldap_client: support `ad_domain` and `preferred_ad_server` options. 472- na_ontap_rest_info: Support for gather subsets - `cloud_targets_info, cluster_chassis_info, cluster_jobs_info, cluster_metrics_info, cluster_schedules, broadcast_domains_info, cluster_software_history, cluster_software_packages, network_ports_info, ip_interfaces_info, ip_routes_info, ip_service_policies, network_ipspaces_info, san_fc_logins_info, san_fc_wppn-aliases, svm_dns_config_info, svm_ldap_config_info, svm_name_mapping_config_info, svm_nis_config_info, svm_peers_info, svm_peer-permissions_info`. 473- na_ontap_rest_info: Support for gather subsets for 9.8+ - `cluster_metrocluster_diagnostics. 474- na_ontap_qtree: `force_delete` option with a DEFAULT of `true` so that ZAPI behavior is aligned with REST. 475- na_ontap_security_certificates:`ignore_name_if_not_supported` option to not fail if `name` is present since `name` is not supported in ONTAP 9.6 and 9.7. 476- na_ontap_software_update: added `timeout` option to give enough time for the update to complete. 477 478### Bug fixes 479- na_ontap_aggregate: `disk-info` error when using `disks` option. 480- na_ontap_autosupport_invoke: `message` has changed to `autosupport_message` as Redhat has reserved this word. `message` has been alias'd to `autosupport_message`. 481- na_ontap_cifs_vserver: fix documentation and add more examples. 482- na_ontap_cluster: module was not idempotent when changing location or contact information. 483- na_ontap_igroup: idempotency issue when using uppercase hex digits (A, B, C, D, E, F) in WWN (ONTAP uses lowercase). 484- na_ontap_igroup_initiator: idempotency issue when using uppercase hex digits (A, B, C, D, E, F) in WWN (ONTAP uses lowercase). 485- na_ontap_security_certificates: allows (`common_name`, `type`) as an alternate key since `name` is not supported in ONTAP 9.6 and 9.7. 486- na_ontap_info: Fixed error causing module to fail on `metrocluster_check_info`, `env_sensors_info` and `volume_move_target_aggr_info`. 487- na_ontap_snapmirror: fixed KeyError when accessing `relationship_type` parameter. 488- na_ontap_snapmirror_policy: fixed a race condition when creating a new policy. 489- na_ontap_snapmirror_policy: fixed idempotency issue withis_network_compression_enabled for REST. 490- na_ontap_software_update: ignore connection errors during update as nodes cannot be reachable. 491- na_ontap_user: enable lock state and password to be set in the same task for existing user. 492- na_ontap_volume: issue when snapdir_access and atime_update not passed together. 493- na_ontap_vscan_on_access_policy: `bool` type was not properly set for `scan_files_with_no_ext`. 494- na_ontap_vscan_on_access_policy: `policy_status` enable/disable option was not supported. 495- na_ontap_vscan_on_demand_task: `file_ext_to_include` was not handled properly. 496- na_ontap_vscan_scanner_pool_policy: scanner_pool apply policy support on modification. 497- na_ontap_vserver_create(role): lif creation now defaults to system-defined unless iscsi lif type. 498- use_rest supports case insensitive. 499 500### Module documentation changes 501- use a three group format for `version_added`. So 2.7 becomes 2.7.0. Same thing for 2.8 and 2.9. 502- add `type:` and `elements:` information where missing. 503- update `required:` information. 504 505## 20.7.0 506 507### New Modules 508- na_ontap_security_certificates: Install, create, sign, delete security certificates. 509 510### New Options: 511- na_ontap_info: support `continue_on_error` option to continue when a ZAPI is not supported on a vserver, or for cluster RPC errors. 512- na_ontap_info: support `query` option to specify which objects to return. 513- na_ontap_info: support `vserver` tunneling to limit output to one vserver. 514- na_ontap_snapmirror_policy: support for SnapMirror policy rules. 515- na_ontap_vscan_scanner_pool: support modification. 516- na_ontap_rest_info: Support for gather subsets - `cluster_node_info, cluster_peer_info, disk_info, cifs_services_info, cifs_share_info`. 517- module_utils/netapp: add retry on wait_on_job when job failed. Abort 3 consecutive errors. 518 519### Bug fixes: 520- na_ontap_command: replace invalid backspace characters (0x08) with '.'. 521- na_ontap_firmware_download: exception on PCDATA if ONTAP returns a BEL (0x07) character. 522- na_ontap_info: lists were incorrectly processed in convert_keys, returning {}. 523- na_ontap_info: qtree_info is missing most entries. Changed key from `vserver:id` to `vserver:volume:id` . 524- na_ontap_iscsi_security: adding no_log for password parameters. 525- na_ontap_portset: adding explicit error message as modify portset is not supported. 526- na_ontap_snapmirror: fixed snapmirror delete for loadsharing to not go to quiesce state for the rest of the set. 527- na_ontap_ucadapter: fixed KeyError if type is not provided and mode is 'cna'. 528- na_ontap_user: checked `applications` does not contain snmp when using REST API call. 529- na_ontap_user: fixed KeyError if locked key not set with REST API call. 530- na_ontap_user: fixed KeyError if vserver: is empty with REST API call (useful to indicate cluster scope). 531- na_ontap_volume: fixed KeyError when getting info on a MVD volume 532 533### Example playbook 534- na_ontap_pb_get_online_volumes.yml: list of volumes that are online (or offline). 535- na_ontap_pb_install_SSL_certificate_REST.yml: installing SSL certificate using REST APIs. 536 537## 20.6.1 538 539### New Options: 540- na_ontap_firmware_upgrade: `reboot_sp`: reboot service processor before downloading package. 541- na_ontap_firmware_upgrade: `rename_package`: rename file when downloading service processor package. 542- na_ontap_firmware_upgrade: `replace_package`: replace local file when downloading service processor package. 543 544### Bug Fixes 545- na_ontap_firmware_upgrade: images are not downloaded, but the module reports success. 546- na_ontap_user: fixed KeyError if password is not provided. 547- na_ontap_password: do not error out if password is identical to previous password (idempotency). 548 549## 20.6.0 550 551### Support for SSL certificate authentication in addition to password 552The ONTAP Ansible modules currently require a username/password combination to authenticate with ONTAPI or REST APIs. 553It is now possible to use SSL certificate authentication with ONTAPI or REST. 554You will first need to install a SSL certificate in ONTAP, see for instance the first part of: 555https://netapp.io/2016/11/08/certificate-based-authentication-netapp-manageability-sdk-ontap/ 556The applications that need to be authorized for `cert` are `ontapi` and `http`. 557 558The new `cert_filepath`, `key_filepath` options enable SSL certificate authentication. 559This is mutually exclusive with using `username` and `password`. 560 561ONTAP does not support `cert` authentication for console, so this is not supported for `na_ontap_command`. 562 563SSL certificate authentication requires python2.7 or 3.x. 564 565### New Options 566- na_ontap_disks: `disk_type` option allows to assign specified type of disk. 567- na_ontap_firmware_upgrade: ignore timeout when downloading image unless `fail_on_502_error` is set to true. 568- na_ontap_info: `desired_attributes` advanced feature to select which fields to return. 569- na_ontap_info: `use_native_zapi_tags` to disable the conversion of '_' to '-' for attribute keys. 570- na_ontap_rest_info: `fields` options to request specific fields from subset. 571- na_ontap_software_update: `stabilize_minutes` option specifies number of minutes needed to stabilize node before update. 572- na_ontap_snapmirror: now performs restore with optional field `source_snapshot` for specific snapshot or uses latest. 573- na_ontap_ucadapter: `pair_adapters` option allows specifying the list of adapters which also need to be offline. 574- na_ontap_user: `authentication_password` option specifies password for the authentication protocol of SNMPv3 user. 575- na_ontap_user: `authentication_protocol` option specifies authentication protocol fo SNMPv3 user. 576- na_ontap_user: `engine_id` option specifies authoritative entity's EngineID for the SNMPv3 user. 577- na_ontap_user: `privacy_password` option specifies password for the privacy protocol of SNMPv3 user. 578- na_ontap_user: `privacy_protocol` option specifies privacy protocol of SNMPv3 user. 579- na_ontap_user: `remote_switch_ipaddress` option specifies the IP Address of the remote switch of SNMPv3 user. 580- na_ontap_volume: `check_interval` option checks if a volume move has been completed and then waits this number of seconds before checking again. 581- na_ontap_volume: `auto_remap_luns` option controls automatic mapping of LUNs during volume rehost. 582- na_ontap_volume: `force_restore` option forces volume to restore even if the volume has one or more newer Snapshotcopies. 583- na_ontap_volume: `force_unmap_luns` option controls automatic unmapping of LUNs during volume rehost. 584- na_ontap_volume: `from_vserver` option allows volume rehost from one vserver to another. 585- na_ontap_volume: `preserve_lun_ids` option controls LUNs in the volume being restored will remain mapped and their identities preserved. 586- na_ontap_volume: `snapshot_restore` option specifies name of snapshot to restore from. 587- all modules: `cert_filepath`, `key_filepath` to enable SSL certificate authentication (python 2.7 or 3.x). 588 589### Bug Fixes 590- na_ontap_firmware_upgrade: ignore timeout when downloading firmware images by default. 591- na_ontap_info: conversion from '-' to '_' was not done for lists of dictionaries. 592- na_ontap_ntfs_dacl: example fix in documentation string. 593- na_ontap_snapmirror: could not delete all rules (bug in netapp_module). 594- na_ontap_volume: modify was invoked multiple times when once is enough. 595- na_ontap_volume: fix KeyError on 'style' when volume is of type: data-protection. 596- na_ontap_volume: `wait_on_completion` is supported with volume moves. 597- module_utils/netapp_module: cater for empty lists in get_modified_attributes(). 598- module_utils/netapp_module: cater for lists with duplicate elements in compare_lists(). 599 600### Example playbook 601- na_ontap_pb_install_SSL_certificate.yml: installing a self-signed SSL certificate, and enabling SSL certificate authentication. 602 603### Added REST support to existing modules 604- na_ontap_user: added REST support for ONTAP user creation, modification & deletion. 605 606 607## 20.5.0 608 609### New Options: 610- na_ontap_aggregate: `raid_type` options supports 'raid_0' for ONTAP Select. 611- na_ontap_cluster_peer: `encryption_protocol_proposed` option allows specifying encryption protocol to be used for inter-cluster communication. 612- na_ontap_info: new fact: aggr_efficiency_info. 613- na_ontap_info: new fact: cluster_switch_info. 614- na_ontap_info: new fact: disk_info. 615- na_ontap_info: new fact: env_sensors_info. 616- na_ontap_info: new fact: net_dev_discovery_info. 617- na_ontap_info: new fact: service_processor_info. 618- na_ontap_info: new fact: shelf_info. 619- na_ontap_info: new fact: sis_info. 620- na_ontap_info: new fact: subsys_health_info. 621- na_ontap_info: new fact: sysconfig_info. 622- na_ontap_info: new fact: sys_cluster_alerts. 623- na_ontap_info: new fact: volume_move_target_aggr_info. 624- na_ontap_info: new fact: volume_space_info. 625- na_ontap_nvme_namespace: `block_size` option allows specifying size in bytes of a logical block. 626- na_ontap_snapmirror: snapmirror now allows resume feature. 627- na_ontap_volume: `cutover_action` option allows specifying the action to be taken for cutover. 628 629### Bug Fixes 630- REST API call now honors the `http_port` parameter. 631- REST API detection now works with vserver (use_rest: Auto). 632- na_ontap_autosupport_invoke: when using ZAPI and name is not given, send autosupport message to all nodes in the cluster. 633- na_ontap_cg_snapshot: properly states it does not support check_mode. 634- na_ontap_cluster: ONTAP 9.3 or earlier does not support ZAPI element single-node-cluster. 635- na_ontap_cluster_ha: support check_mode. 636- na_ontap_cluster_peer: support check_mode. 637- na_ontap_cluster_peer: EMS log wrongly uses destination credentials with source hostname. 638- na_ontap_disks: support check_mode. 639- na_ontap_dns: support check_mode. 640- na_ontap_efficiency_policy: change `duration` type from int to str to support '-' input. 641- na_ontap_fcp: support check_mode. 642- na_ontap_flexcache: support check_mode. 643- na_ontap_info: `metrocluster_check_info` does not trigger a traceback but adds an "error" info element if the target system is not set up for metrocluster. 644- na_ontap_license: support check_mode. 645- na_ontap_login_messages: fix documentation link. 646- na_ontap_node: support check mode. 647- na_ontap_ntfs_sd: documentation string update for examples and made sure owner or group not mandatory. 648- na_ontap_ports: now support check mode. 649- na_ontap_restit: error can be a string in addition to a dict. This fix removes a traceback with AttributeError. 650- na_ontap_routes: support Check Mode correctly. 651- na_ontap_snapmirror: support check_mode. 652- na_ontap_software_update: Incorrectly stated that it support check mode, it does not. 653- na_ontap_svm_options: support check_mode. 654- na_ontap_volume: improve error reporting if required parameter is present but not set. 655- na_ontap_volume: suppress traceback in wait_for_completion as volume may not be completely ready. 656- na_ontap_volume: fix KeyError on 'style' when volume is offline. 657- na_ontap_volume_autosize: Support check_mode when `reset` option is given. 658- na_ontap_volume_snaplock: fix documentation link. 659- na_ontap_vserver_peer: support check_mode. 660- na_ontap_vserver_peer: EMS log wrongly uses destination credentials with source hostname. 661 662### New Modules 663- na_ontap_rest_info: Gather ONTAP subset information using REST APIs (9.6 and Above). 664 665### Role Change 666- na_ontap_cluster_config: Port Flowcontrol and autonegotiate can be set in role 667 668## 20.4.1 669 670### New Options 671- na_ontap_firmware_upgrade: `force_disruptive_update` and `package_url` options allows to make choices for download and upgrading packages. 672 673### Added REST support to existing modules 674- na_ontap_autosupport_invoke: added REST support for sending autosupport message. 675 676### Bug Fixes 677- na_ontap_volume: `volume_security_style` option now allows modify. 678- na_ontap_info: `metrocluster_check_info` has been removed as it was breaking the info module for everyone who didn't have a metrocluster set up. We are working on adding this back in a future update 679 680### Role Changes 681- na_ontap_vserver_create has a new default variable `netapp_version` set to 140. If you are running 9.2 or below please add the variable to your playbook and set to 120 682 683## 20.4.0 684 685### New Options 686- na_ontap_aggregate: `disk_count` option allows adding additional disk to aggregate. 687- na_ontap_info: `max_records` option specifies maximum number of records returned in a single ZAPI call. 688- na_ontap_info: `summary` option specifies a boolean flag to control return all or none of the info attributes. 689- na_ontap_info: new fact: iscsi_service_info. 690- na_ontap_info: new fact: license_info. 691- na_ontap_info: new fact: metrocluster_info. 692- na_ontap_info: new fact: metrocluster_check_info. 693- na_ontap_info: new fact: metrocluster_node_info. 694- na_ontap_info: new fact: net_interface_service_policy_info. 695- na_ontap_info: new fact: ontap_system_version. 696- na_ontap_info: new fact: ontapi_version (and deprecate ontap_version, both fields are reported for now). 697- na_ontap_info: new fact: qtree_info. 698- na_ontap_info: new fact: quota_report_info. 699- na_ontap_info: new fact: snapmirror_destination_info. 700- na_ontap_interface: `service_policy` option to identify a single service or a list of services that will use a LIF. 701- na_ontap_kerberos_realm: `ad_server_ip` option specifies IP Address of the Active Directory Domain Controller (DC). 702- na_ontap_kerberos_realm: `ad_server_name` option specifies Host name of the Active Directory Domain Controller (DC). 703- na_ontap_snapmirror_policy: REST is included and all defaults are removed from options. 704- na_ontap_snapmirror: `relationship-info-only` option allows to manage relationship information. 705- na_ontap_software_update: `download_only` options allows to download cluster image without software update. 706- na_ontap_volume: `snapshot_auto_delete` option allows to manage auto delete settings of a specified volume. 707 708### Bug Fixes 709- na_ontap_cifs_server: delete AD account if username and password are provided when state=absent 710- na_ontap_info: return all records of each gathered subset. 711- na_ontap_info: cifs_server_info: fix KeyError exception on `domain` if only `domain-workgroup` is present. 712- na_ontap_iscsi_security: Fixed modify functionality for CHAP and typo correction 713- na_ontap_kerberos_realm: fix `kdc_vendor` case sensitivity issue. 714- na_ontap_snapmirror: calling quiesce before snapmirror break. 715 716### New Modules 717- na_ontap_autosupport_invoke: send autosupport message. 718- na_ontap_ntfs_dacl: create/modify/delete ntfs dacl (discretionary access control list). 719- na_ontap_ntfs_sd: create/modify/delete ntfs security descriptor. 720- na_ontap_restit: send any REST API request to ONTAP (9.6 and above). 721- na_ontap_snmp_traphosts: Create and delete snmp traphosts (9.7 and Above) 722- na_ontap_wwpn_alias: create/modify/delete vserver fcp wwpn-alias. 723- na_ontap_zapit: send any ZAPI request to ONTAP. 724 725## 20.3.0 726 727### New Options 728- na_ontap_info: New info's added `cluster_identity_info` 729- na_ontap_info: New info's added `storage_bridge_info` 730- na_ontap_snapmirror: performs resync when the `relationship_state` is active and the current state is broken-off. 731 732### Bug Fixes 733- na_ontap_vscan_scanner_pool: has been updated to match the standard format used for all other ontap modules 734- na_ontap_volume_snaplock: Fixed KeyError exception on 'is-volume-append-mode-enabled' 735 736### New Modules 737- na_ontap_snapmirror_policy: create/modify/delete snapmirror policy. 738 739## 20.2.0 740 741### New Modules 742- na_ontap_volume_snaplock: modify volume snaplock retention. 743 744### New Options 745- na_ontap_info: New info's added `snapshot_info` 746- na_ontap_info: `max_records` option to set maximum number of records to return per subset. 747- na_ontap_snapmirror: `relationship_state` option for breaking the snapmirror relationship. 748- na_ontap_snapmirror: `update_snapmirror` option for updating the snapmirror relationship. 749- na_ontap_volume_clone: `split` option to split clone volume from parent volume. 750 751### Bug Fixes 752- na_ontap_cifs_server: Fixed KeyError exception on 'cifs_server_name' 753- na_ontap_command: fixed traceback when using return_dict if u'1' is present in result value. 754- na_ontap_login_messages: Fixed example documentation and spelling mistake issue 755- na_ontap_nvme_subsystem: fixed bug when creating subsystem, vserver was not filtered. 756- na_ontap_svm: if snapshot policy is changed, modify fails with "Extra input: snapshot_policy" 757- na_ontap_svm: if language: C.UTF-8 is specified, the module is not idempotent 758- na_ontap_volume_clone: fixed 'Extra input: parent-vserver' error when running as cluster admin. 759- na_ontap_qtree: Fixed issue with Get function for REST 760 761### Role Changes 762- na_ontap_nas_create role: fix typo in README file, add CIFS example. 763 764## 20.1.0 765 766### New Modules 767- na_ontap_login_messages: create/modify/delete security login messages including banner and mtod. 768 769### New Options 770- na_ontap_aggregate: add `snaplock_type`. 771- na_ontap_info: New info's added `cifs_server_info`, `cifs_share_info`, `cifs_vserver_security_info`, `cluster_peer_info`, `clock_info`, `export_policy_info`, `export_rule_info`, `fcp_adapter_info`, `fcp_alias_info`, `fcp_service_info`, `job_schedule_cron_info`, `kerberos_realm_info`, `ldap_client`, `ldap_config`, `net_failover_group_info`, `net_firewall_info`, `net_ipspaces_info`, `net_port_broadcast_domain_info`, `net_routes_info`, `net_vlan_info`, `nfs_info`, `ntfs_dacl_info`, `ntfs_sd_info`, `ntp_server_info`, `role_info`, `service_processor_network_info`, `sis_policy_info`, `snapmirror_policy_info`, `snapshot_policy_info`, `vscan_info`, `vserver_peer_info` 772- na_ontap_igroup_initiator: `force_remove` to forcibly remove initiators from an igroup that is currently mapped to a LUN. 773- na_ontap_interface: `failover_group` to specify the failover group for the LIF. `is_ipv4_link_local` to specify the LIF's are to acquire a ipv4 link local address. 774- na_ontap_rest_cli: add OPTIONS as a supported verb and return list of allowed verbs. 775- na_ontap_volume: add `group_id` and `user_id`. 776 777### Bug Fixes 778- na_ontap_aggregate: Fixed traceback when running as vsadmin and cleanly error out. 779- na_ontap_command: stdout_lines_filter contains data only if include/exlude_lines parameter is used. (zeten30) 780- na_ontap_command: stripped_line len is checked only once, filters are inside if block. (zeten30) 781- na_ontap_interface: allow module to run on node before joining the cluster. 782- na_ontap_net_ifgrp: Fixed error for na_ontap_net_ifgrp if no port is given. 783- na_ontap_snapmirror: Fixed traceback when running as vsadmin. Do not attempt to break a relationship that is 'Uninitialized'. 784- na_ontap_snapshot_policy: Fixed KeyError: 'prefix' bug when prefix parameter isn't supplied. 785- na_ontap_volume: Fixed error reporting if efficiency policy cannot be read. Do not attempt to read efficiency policy if not needed. 786- na_ontap_volume: Fixed error when modifying volume efficiency policy. 787- na_ontap_volume_clone: Fixed KeyError exception on 'volume' 788 789### Added REST support to existing modules 790- na_ontap_dns: added REST support for dns creation and modification on cluster vserver. 791 792### Role Changes 793 794## 19.11.0 795 796### New Modules 797- na_ontap_quota_policy: create/rename/delete quota policy. 798 799### New Options 800- na_ontap_cluster: added single node cluster option, also now supports for modify cluster contact and location option. 801- na_ontap_info: Now allow you use to VSadmin to get info (Must user `vserver` option). 802- na_ontap_info: Added `vscan_status_info`, `vscan_scanner_pool_info`, `vscan_connection_status_all_info`, `vscan_connection_extended_stats_info` 803- na_ontap_efficiency_policy: `changelog_threshold_percent` to set the percentage at which the changelog will be processed for a threshold type of policy, tested once each hour. 804 805### Bug Fixes 806- na_ontap_cluster: autosupport log pushed after cluster create is performed, removed license add or remove option. 807- na_ontap_dns: report error if modify or delete operations are attempted on cserver when using REST. Make create operation idempotent for cserver when using REST. Support for modify/delete on cserver when using REST will be added later. 808- na_ontap_firewall_policy: portmap added as a valid service 809- na_ontap_net_routes: REST does not support the 'metric' attribute 810- na_ontap_snapmirror: added initialize boolean option which specifies whether to initialize SnapMirror relation. 811- na_ontap_volume: fixed error when deleting flexGroup volume with ONTAP 9.7. 812- na_ontap_volume: tiering option requires 9.4 or later (error on volume-comp-aggr-attributes) 813- na_ontap_vscan_scanner_pool: fix module only gets one scanner pool. 814 815### Added REST support to existing modules 816 817### Role Changes 818 819## 19.10.0 820Changes in 19.10.0 and September collection releases compared to Ansible 2.9 821 822### New Modules 823- na_ontap_name_service_switch: create/modify/delete name service switch configuration. 824- na_ontap_iscsi_security: create/modify/delete iscsi security. 825 826### New Options 827- na_ontap_command: `vserver`: to allow command to run as either cluster admin or vserver admin. To run as vserver admin you must use the vserver option. 828- na_ontap_motd: rename `message` to `motd_message` to avoid conflict with Ansible internal variable name. 829- na_ontap_nvme_namespace: `size_unit` to specify size in different units. 830- na_ontap_snapshot_policy: `prefix`: option to use for creating snapshot policy. 831 832### Bug Fixes 833- na_ontap_ndmp: minor documentation changes for restore_vm_cache_size and data_port_range. 834- na_ontap_qtree: REST API takes "unix_permissions" as parameter instead of "mode". 835- na_ontap_qtree: unix permission is not available when security style is ntfs 836- na_ontap_user: minor documentation update for application parameter. 837- na_ontap_volume: `efficiency_policy` was ignored 838- na_ontap_volume: enforce that space_slo and space_guarantee are mutually exclusive 839- na_ontap_svm: "allowed_protocols" added to param in proper way in case of using REST API 840- na_ontap_firewall_policy: documentation changed for supported service parameter. 841- na_ontap_net_subnet: fix ip_ranges option fails on existing subnet. 842- na_ontap_snapshot_policy: fix vsadmin approach for managing snapshot policy. 843- na_ontap_nvme_subsystem: fix fetching unique nvme subsytem based on vserver filter. 844- na ontap_net_routes: change metric type from string to int. 845- na_ontap_cifs_server: minor documentation changes correction of create example with "name" parameter and adding type to parameters. 846- na_ontap_vserver_cifs_security: fix int and boolean options when modifying vserver cifs security. 847- na_ontap_net_subnet: fix rename idempotency issue and updated rename check. 848 849### Added REST support to existing modules 850By default, the module will use REST if the target system supports it, and the options are supported. Otherwise, it will switch back to ZAPI. This behavior can be controlled with the `use_rest` option: 8511. Always: to force REST. The module fails and reports an error if REST cannot be used. 8521. Never: to force ZAPI. This could be useful if you find some incompatibility with REST, or want to confirm the behavior is identical between REST and ZAPI. 8531. Auto: the default, as described above. 854 855- na_ontap_ipspace 856- na_ontap_export_policy 857- na_ontap_ndmp 858-- Note: only `enable` and `authtype` are supported with REST 859- na_ontap_net_routes 860- na_ontap_qtree 861-- Note: `oplocks` is not supported with REST, defaults to enable. 862- na_ontap_svm 863-- Note: `root_volume`, `root_volume_aggregate`, `root_volume_security_style` are not supported with REST. 864- na_ontap_job_schedule 865 866### Role Changes 867- na_ontap_cluster_config updated to all cleaner playbook 868- na_ontap_vserver_create updated to all cleaner playbook 869- na_ontap_nas_create updated to all cleaner playbook 870- na_ontap_san_create updated to all cleaner playbook 871