diff --git a/ansible_collections/netapp/azure/netapp-azure-20.8.0.tar.gz b/ansible_collections/netapp/azure/netapp-azure-20.8.0.tar.gz index a5fa33c8..9355bf09 100644 Binary files a/ansible_collections/netapp/azure/netapp-azure-20.8.0.tar.gz and b/ansible_collections/netapp/azure/netapp-azure-20.8.0.tar.gz differ diff --git a/ansible_collections/netapp/ontap/README.md b/ansible_collections/netapp/ontap/README.md index 5f86f52c..04bdeb52 100644 --- a/ansible_collections/netapp/ontap/README.md +++ b/ansible_collections/netapp/ontap/README.md @@ -39,6 +39,7 @@ Join our Slack Channel at [Netapp.io](http://netapp.io/slack) - na_ontap_qos_policy_group - new option `is_shared` for sharing QOS SLOs or not. - na_ontap_quota_policy - new option `auto_assign` to assign quota policy to vserver. - na_ontap_quotas - new option `activate_quota_on_change` to resize or reinitialize quotas. + - na_ontap_quotas - new option `perform_user_mapping` to perform user mapping for the user specified in quota-target. - 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` - na_ontap_svm - warning for `aggr_list` wildcard value(`*`) in create\modify idempotency. - na_ontap_volume - `compression` to enable compression on a FAS volume. diff --git a/ansible_collections/netapp/ontap/changelogs/fragments/DEVOPS-3399.yaml b/ansible_collections/netapp/ontap/changelogs/fragments/DEVOPS-3399.yaml new file mode 100644 index 00000000..7b48e095 --- /dev/null +++ b/ansible_collections/netapp/ontap/changelogs/fragments/DEVOPS-3399.yaml @@ -0,0 +1,2 @@ +minor_changes: + - na_ontap_quotas - New option ``perform_user_mapping`` to perform user mapping for the user specified in quota-target. diff --git a/ansible_collections/netapp/ontap/plugins/modules/na_ontap_quotas.py b/ansible_collections/netapp/ontap/plugins/modules/na_ontap_quotas.py index 48be70f3..330a6986 100644 --- a/ansible_collections/netapp/ontap/plugins/modules/na_ontap_quotas.py +++ b/ansible_collections/netapp/ontap/plugins/modules/na_ontap_quotas.py @@ -64,6 +64,12 @@ description: - Whether the specified volume should have quota status on or off. type: bool + perform_user_mapping: + description: + - Whether quota management will perform user mapping for the user specified in quota-target. + - User mapping can be specified only for a user quota rule. + type: bool + version_added: 20.12.0 file_limit: description: - The number of files that the target can have. @@ -195,6 +201,7 @@ def __init__(self): type=dict(required=True, type='str', choices=['user', 'group', 'tree']), policy=dict(required=False, type='str'), set_quota_status=dict(required=False, type='bool'), + perform_user_mapping=dict(required=False, type='bool'), file_limit=dict(required=False, type='str'), disk_limit=dict(required=False, type='str'), soft_file_limit=dict(required=False, type='str'), @@ -269,6 +276,9 @@ def get_quotas(self): 'soft_file_limit': result['attributes-list']['quota-entry']['soft-file-limit'], 'soft_disk_limit': result['attributes-list']['quota-entry']['soft-disk-limit'], 'threshold': result['attributes-list']['quota-entry']['threshold']} + value = self.na_helper.safe_get(result, ['attributes-list', 'quota-entry', 'perform-user-mapping']) + if value is not None: + return_values['perform_user_mapping'] = self.na_helper.get_value_for_bool(True, value) return return_values return None @@ -285,6 +295,8 @@ def quota_entry_set(self): options['file-limit'] = self.parameters['file_limit'] if self.parameters.get('disk_limit'): options['disk-limit'] = self.parameters['disk_limit'] + if self.parameters.get('perform_user_mapping') is not None: + options['perform-user-mapping'] = str(self.parameters['perform_user_mapping']) if self.parameters.get('soft_file_limit'): options['soft-file-limit'] = self.parameters['soft_file_limit'] if self.parameters.get('soft_disk_limit'): @@ -334,6 +346,8 @@ def quota_entry_modify(self, modify_attrs): options['file-limit'] = self.parameters['file_limit'] if self.parameters.get('disk_limit'): options['disk-limit'] = self.parameters['disk_limit'] + if self.parameters.get('perform_user_mapping') is not None: + options['perform-user-mapping'] = str(self.parameters['perform_user_mapping']) if self.parameters.get('soft_file_limit'): options['soft-file-limit'] = self.parameters['soft_file_limit'] if self.parameters.get('soft_disk_limit'):