diff options
author | Felix Fontein <felix@fontein.de> | 2021-08-09 17:22:09 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-08-09 10:22:09 -0500 |
commit | fae299708fb971d450a6874d25f62f5104db2e6d (patch) | |
tree | a90334f64a08118cb22df74bb44850d7e6c24219 /lib/ansible | |
parent | e23fdee45e7db82de15fd056b1e04253d3ce8b40 (diff) | |
download | ansible-fae299708fb971d450a6874d25f62f5104db2e6d.tar.gz |
plugin attributes: make validate-modules strict again, improve version_added support (#74602)
* Add basic schema for attributes.
* Support attributes for version_added_collection adding mechanism.
* Add changelog fragment.
* Support new attribute properties from #74331.
* Require additional properties strictly.
Diffstat (limited to 'lib/ansible')
-rw-r--r-- | lib/ansible/utils/plugin_docs.py | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/lib/ansible/utils/plugin_docs.py b/lib/ansible/utils/plugin_docs.py index dc1160d485..eb03dc081c 100644 --- a/lib/ansible/utils/plugin_docs.py +++ b/lib/ansible/utils/plugin_docs.py @@ -89,6 +89,13 @@ def _process_versions_and_dates(fragment, is_module, return_docs, callback): if isinstance(return_value.get('contains'), MutableMapping): process_return_values(return_value['contains']) + def process_attributes(attributes): + for attribute in attributes.values(): + if not isinstance(attribute, MutableMapping): + continue + if 'version_added' in attribute: + callback(attribute, 'version_added', 'version_added_collection') + if not fragment: return @@ -102,6 +109,8 @@ def _process_versions_and_dates(fragment, is_module, return_docs, callback): process_deprecation(fragment['deprecated'], top_level=True) if isinstance(fragment.get('options'), MutableMapping): process_options(fragment['options']) + if isinstance(fragment.get('attributes'), MutableMapping): + process_attributes(fragment['attributes']) def add_collection_to_versions_and_dates(fragment, collection_name, is_module, return_docs=False): |