mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2025-08-30 07:18:09 +02:00
Restructured libraries
This commit is contained in:
27
filter_plugins/README.md
Normal file
27
filter_plugins/README.md
Normal file
@@ -0,0 +1,27 @@
|
||||
# Custom Filter Plugins for CyMaIS
|
||||
|
||||
This directory contains custom **Ansible filter plugins** used within the CyMaIS project.
|
||||
|
||||
## When to Use a Filter Plugin
|
||||
|
||||
- **Transform values:** Use filters to transform, extract, reformat, or compute values from existing variables or facts.
|
||||
- **Inline data manipulation:** Filters are designed for inline use in Jinja2 expressions (in templates, tasks, vars, etc.).
|
||||
- **No external lookups:** Filters only operate on data you explicitly pass to them and cannot access external files, the Ansible inventory, or runtime context.
|
||||
|
||||
### Examples
|
||||
|
||||
```jinja2
|
||||
{{ role_name | get_entity_name }}
|
||||
{{ my_list | unique }}
|
||||
{{ user_email | regex_replace('^(.+)@.*$', '\\1') }}
|
||||
````
|
||||
|
||||
## When *not* to Use a Filter Plugin
|
||||
|
||||
* If you need to **load data from an external source** (e.g., file, environment, API), use a lookup plugin instead.
|
||||
* If your logic requires **access to inventory, facts, or host-level information** that is not passed as a parameter.
|
||||
|
||||
## Further Reading
|
||||
|
||||
* [Ansible Filter Plugins Documentation](https://docs.ansible.com/ansible/latest/plugins/filter.html)
|
||||
* [Developing Ansible Filter Plugins](https://docs.ansible.com/ansible/latest/dev_guide/developing_plugins.html#developing-filter-plugins)
|
Reference in New Issue
Block a user