.. | ||
__init__.py | ||
module_args.py | ||
README.md | ||
schema.py | ||
utils.py | ||
validate-modules |
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_json
orfail_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
RETURN
for new modules
Warnings
- Try/Except
HAS_
expression missing - Missing
RETURN
for existing modules import json
found- Module contains duplicate globals from basic.py
Module Directories (Python Packages)
- Missing
__init__.py