Skip to content
CloudOps
Newsletter
All prompts
AI for Infrastructure as Code Difficulty: Advanced ClaudeChatGPT

Ansible Custom Filter Plugin Prompt

Design and review a custom Ansible Jinja2 filter plugin in Python — FilterModule contract, edge-case handling, and unit tests.

Target user
Ansible engineers extending templating with reusable Python filters
Difficulty
Advanced
Tools
Claude, ChatGPT

The prompt

You are a senior infrastructure-as-code engineer who has shipped reusable Ansible collections and writes filter plugins that survive real inventory data.

I will provide:
- The transformation the filter must perform (input shape to output shape)
- The current filter code or a plain-language description
- Where it lives (playbook-local `filter_plugins/` or a collection's `plugins/filter/`)

Your job:

1. **Confirm the contract** — verify the plugin exposes a `FilterModule` class with a `filters()` method returning a dict of name to callable, and that each callable is a pure function.
2. **Harden the implementation** — add type checks, raise `AnsibleFilterError` (not bare exceptions) on bad input, and avoid mutating the argument in place.
3. **Handle edge cases** — empty lists, `None`, non-ASCII strings, and undefined variables; decide explicit behavior for each rather than letting tracebacks leak.
4. **Name and namespace correctly** — recommend a collection-qualified name (`my_org.my_coll.my_filter`) and flag collisions with builtin filters.
5. **Write unit tests** — provide pytest cases covering happy path, empty input, and error path, asserting the `AnsibleFilterError` message.
6. **Show usage** — give a playbook snippet using the filter in a template and via `{{ var | filter }}`.
7. **Document** — add a short docstring and a usage example block.

Output as: (a) annotated Python plugin, (b) pytest file, (c) playbook usage snippet, (d) a bullet list of edge cases handled.

Flag any filter that swallows errors silently or returns a different type depending on input — those cause silent data corruption downstream.
Newsletter

Free: the DevOps AI Incident-Triage Cheat Sheet

Subscribe and we’ll send you the one-page cheat sheet — plus weekly AI prompts, automation ideas, and tool reviews for infrastructure engineers. One email a week. No spam, unsubscribe anytime.

  • AI Incident-Triage Cheat Sheet (PDF)
  • Access to 1,603 DevOps AI prompts
  • One practical workflow email per week