mirror of
https://github.com/ansible-collections/community.general.git
synced 2026-04-22 00:31:14 +00:00
validate-modules
Python program to help test or validate Ansible modules.
Originally developed by Matt Martz (@sivel)
Usage
cd /path/to/ansible/source
source hacking/env-setup
test/sanity/validate-modules/validate-modules /path/to/modules
Help
usage: validate-modules [-h] [-w] [--exclude EXCLUDE] modules
positional arguments:
modules Path to module or module directory
optional arguments:
-h, --help show this help message and exit
-w, --warnings Show warnings
--exclude EXCLUDE RegEx exclusion pattern
Current Validations
Modules
Errors
- Interpreter line is not
#!/usr/bin/python main()not at the bottom of the file- Module does not import
ansible.module_utils.basic - Missing
DOCUMENTATION - Documentation is invalid YAML
- Invalid schema for
DOCUMENTATION - Missing
EXAMPLES - Invalid Python Syntax
- Tabbed indentation
- Use of
sys.exit()instead ofexit_jsonorfail_json - Missing GPLv3 license header in module
- PowerShell module missing
WANT_JSON - PowerShell module missing
POWERSHELL_COMMON - New modules have the correct
version_added - New arguments have the correct
version_added - Modules should not import requests, instead use
ansible.module_utils.urls - Missing
RETURNfor new modules
Warnings
- Try/Except
HAS_expression missing - Missing
RETURNfor existing modules import jsonfound- Module contains duplicate globals from basic.py
Module Directories (Python Packages)
- Missing
__init__.py