summaryrefslogtreecommitdiff
path: root/lib/ansible/plugins/list.py
Commit message (Collapse)AuthorAgeFilesLines
* Use ansible.module_utils.common.text.converters (#80704)Matt Clay2023-05-031-1/+1
| | | Replace use of old `ansible.module_utils._text` and add a unit test to maintain backwards compatibility.
* Clean up unused imports in core (#79900)Matt Clay2023-02-031-1/+1
| | | | | * Clean up unused imports in core * Add changelog fragment
* Add support for importlib.resources (#78915)Matt Martz2023-01-101-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add support for importlib.resources * Remove the importlib.resources imports * return the correct data * Some code comments, and re-order for consistency * Disallow traversing packages below an individual collection * Add a traversable class for namespaces * Re-use variable * Utilize itertools.chain.from_iterable Co-authored-by: Sviatoslav Sydorenko <wk.cvs.github@sydorenko.org.ua> * Simplify logic to check for packages from ansible loaders Co-authored-by: Sviatoslav Sydorenko <wk.cvs.github@sydorenko.org.ua> * Just a generator expression, instead of a generator * docstrings * Add comment about find_spec for our namespaces * Add some initial unit tests for importlib.resources * normalize * Utilize importlib.resources for listing collections * collections_path is already in config, just use config * install uses a different default for collections_path * Remove unused import * Remove duplicate __truediv__ * Bring back TraversableResources * Apply some small suggestions from code review Co-authored-by: Sviatoslav Sydorenko <wk.cvs.github@sydorenko.org.ua> Co-authored-by: Matt Davis <6775756+nitzmahone@users.noreply.github.com> * Remove cross contamination between plugin loader code and CLI code * Remove unused import Co-authored-by: Sviatoslav Sydorenko <wk.cvs.github@sydorenko.org.ua> Co-authored-by: Matt Davis <6775756+nitzmahone@users.noreply.github.com>
* filter/test plugin listing, fix bug on file sorting (#79591)Brian Coca2022-12-151-4/+1
| | | | | | | * filter/test plugin listing, fix bug on file sorting avoid legacy/builtin special casing for 'all'
* add ansible_name/ansible_aliases attrs to plugin objects (#78700)Sloane Hertel2022-09-151-29/+18
| | | | | | | | | | | | | | | | | | | | | | * new _fqcn attribute to plugin objects * unbreak plugins in subdirs * Fix inadventent changes to _load_name and use existing vars * add plugin aliases and name property, and replace plugin._load_name where incorrect * Fix listing plugin names Fix listing legacy and builtin together test deprecated plugin documentation fix doc extensions remove sometimes inaccurate _load_name handling from plugin.name * Add tests for REJECT_EXTS and doc extensions Fix unpredictable collection redirects so non-fqcns in the redirect list are guaranteed to be legacy (instead of determined by the collections keyword) Move aliases and name properties to _update_object so all plugin types, including doc fragments, can use them * make legacy plugin names internally consistent * rename attributes to ansible_name and ansible_aliases
* refactor and fixes for doc parsing (#77719)Brian Coca2022-09-011-76/+66
| | | | | | | | | | | | | | | * refactor and remove redundant code in documentation allow location and building api to be more accessible fix issues with displaying ansible.legacy and ansible.builtin ensure we don't x2 process tokens (some modules reference them also) fixes #77764 move to constants vs hardcoded more informative errors and comments now have actual filter/test plugins, which expose the filter/test functions moved filter/test loading/finding logic into jinja2pluginloader, removed dupe implementations added tests for case in which we unique by basename when listing Update lib/ansible/utils/plugin_docs.py Co-authored-by: Sloane Hertel <19572925+s-hertel@users.noreply.github.com>
* Fix variable use before definition. (#78500)Matt Clay2022-08-111-1/+2
| | | | | | | * Fix variable use before definition. * Include mkstemp in exception handler. Also remove two pointless variable assignments.
* expand ansible-doc coverage (#74963)Brian Coca2022-04-271-0/+233
* Expand ansible-doc to tests/filters and fix existing issues enable filter/test docs if in single file or companion yaml add docs for several filters/tests plugins allow .yml companion for docs for other plugins, must be colocated verify plugins are valid (not modules, cannot) fix 'per collection' filtering limit old style deprecation (_ prefix) to builtin/legacy start move to pathlib for saner path handling moved some funcitons, kept backwards compat shims with deprecation notice Co-authored-by: Abhijeet Kasurde <akasurde@redhat.com> Co-authored-by: Felix Fontein <felix@fontein.de> Co-authored-by: Sandra McCann <samccann@redhat.com>