Variable checker for ansible playbooks
Project description
ansiblevarchecker
CLI to check what vars are defined / used to find undefined or extra vars not documented.
Based on source for ansible 2.9 and striped down and modified version of jinja2schema.
Known Issues
- Sub attributes of a dictionary are marked as defined if a different sub attribute is set e.g
# Setting
dict:
sub: yay
# Will cause the use of the following undefined var to be marked as defined
{{ dict.undefined }}
-
Setting variables in jinja2 templates are seen as variable usage and will be marked as undefined if they have not been registered outside of the jinja2 template
-
Because of the removed scalar typing (to fix issues with filter discovery and other edge cases), infer-ing assumes all if statements evaluate to a boolean which can fail when actually run. This is out of scope of what avc is meant to do and is expected behavior (aka, test your code before pushing)
-
Python 3.6.x isn't tested and isn't 100% supported due to https://www.python.org/dev/peps/pep-0538/ being introduced min 3.7. 3.6 can still be configured to work with UTF-8 encoding but this package is not tested against 3.6
-
Tests can fail with
ImportError: cannot import name 'soft_unicode' from 'markupsafe'
. To overcome this a downgraded version of markupsafe must be usedpip install MarkupSafe==2.0.1
-
On my local machine
python -m
needs to come before theansiblevarchecker
otherwise aImportError: cannot import name 'main' from 'ansiblevarchecker'
occurs
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for ansiblevarchecker-0.0.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cfe42bd12cb9a295a83ae42338f197fe9d4d8bcf7436513cd1327ba1ecc178dd |
|
MD5 | 0af0cf3d0be8c9561ecb748eb44789cf |
|
BLAKE2b-256 | d54ee94af3441ab29750645f5cec09221e06cd1163db34297f722446bb6a6dc4 |