stdevel
(Christian Stankowic)
January 13, 2026, 1:21pm
1
Hello everybody,
I’m currently trying to auto-generate Ansible modules from OpenAPI (Swagger) definitions. During research I stumbled upon the ansible.content_builder collection . This collection is suspect to be replaced with the ansible-creator utility - anyhow, this tool still lacks OpenAPI support .
I tried to get ansible.content_builder running, but stumbled upon various issues .
Next, I discovered ansible-waldur-generator that generates code, but isn’t working for me - the documentation is very hard to get into.
My question : Are these the only two utilities to auto-generate Ansible modules from OpenAPI definitions these days? Am I missing something?
Thanks a lot in advance!
1 Like
bvitnik
(Bojan Vitnik)
January 13, 2026, 3:10pm
2
Hi. While I may have no real answer, the thing you are doing reminded me of what Citrix did for their NetScaler product line.
Custom Ansible modules for NetScaler ADC and NetScaler ADM. Part of NetScaler Automation Toolkit | https://github.com/netscaler/automation-toolkit
Take a look at:
# -*- coding: utf-8 -*-
# Copyright (c) 2025 Cloud Software Group, Inc.
# MIT License (see LICENSE or https://opensource.org/licenses/MIT)
from __future__ import absolute_import, division, print_function
__metaclass__ = type
NITRO_RESOURCE_MAP = {
"aaacertparams": {
"_supported_operations": ["get", "unset", "update"],
"action_payload_keys": {
"apply": [],
"change": [],
"create": [],
"force": [],
"import": [],
"link": [],
"switch": [],
This file has been truncated. show original
and
# -*- coding: utf-8 -*-
# Copyright (c) 2025 Cloud Software Group, Inc.
# MIT License (see LICENSE or https://opensource.org/licenses/MIT)
from __future__ import absolute_import, division, print_function
__metaclass__ = type
import os
import re
from ansible.module_utils.basic import AnsibleModule
from .client import NitroAPIClient
from .common import (
adc_login,
adc_logout,
bind_resource,
create_resource,
This file has been truncated. show original
This is not OpenAPI per se but the idea is the same. They have a huge strict API specification in form of a Python dict (almost JSON) and a “module executor” that can generate modules on the fly using the specification. The modules are then trivial. They just call the module executor.
1 Like
stdevel
(Christian Stankowic)
January 13, 2026, 4:05pm
3
That’s a good catch, thanks for sharing!