summaryrefslogtreecommitdiff
path: root/lib/ansible/module_utils/common/parameters.py
diff options
context:
space:
mode:
Diffstat (limited to 'lib/ansible/module_utils/common/parameters.py')
-rw-r--r--lib/ansible/module_utils/common/parameters.py20
1 files changed, 16 insertions, 4 deletions
diff --git a/lib/ansible/module_utils/common/parameters.py b/lib/ansible/module_utils/common/parameters.py
index c1df1c06e9..059ca0af51 100644
--- a/lib/ansible/module_utils/common/parameters.py
+++ b/lib/ansible/module_utils/common/parameters.py
@@ -705,6 +705,7 @@ def _validate_sub_spec(
no_log_values=None,
unsupported_parameters=None,
supported_parameters=None,
+ alias_deprecations=None,
):
"""Validate sub argument spec.
@@ -761,15 +762,24 @@ def _validate_sub_spec(
new_prefix += '.'
alias_warnings = []
- alias_deprecations = []
+ alias_deprecations_sub = []
try:
- options_aliases = _handle_aliases(sub_spec, sub_parameters, alias_warnings, alias_deprecations)
+ options_aliases = _handle_aliases(sub_spec, sub_parameters, alias_warnings, alias_deprecations_sub)
except (TypeError, ValueError) as e:
options_aliases = {}
errors.append(AliasError(to_native(e)))
for option, alias in alias_warnings:
- warn('Both option %s and its alias %s are set.' % (option, alias))
+ warn('Both option %s%s and its alias %s%s are set.' % (new_prefix, option, new_prefix, alias))
+
+ if alias_deprecations is not None:
+ for deprecation in alias_deprecations_sub:
+ alias_deprecations.append({
+ 'name': '%s%s' % (new_prefix, deprecation['name']),
+ 'version': deprecation.get('version'),
+ 'date': deprecation.get('date'),
+ 'collection_name': deprecation.get('collection_name'),
+ })
try:
no_log_values.update(_list_no_log_values(sub_spec, sub_parameters))
@@ -811,7 +821,9 @@ def _validate_sub_spec(
no_log_values.update(_set_defaults(sub_spec, sub_parameters))
# Handle nested specs
- _validate_sub_spec(sub_spec, sub_parameters, new_prefix, options_context, errors, no_log_values, unsupported_parameters, supported_parameters)
+ _validate_sub_spec(
+ sub_spec, sub_parameters, new_prefix, options_context, errors, no_log_values,
+ unsupported_parameters, supported_parameters, alias_deprecations)
options_context.pop()