Do not use
assert in production Ansible python code. When running Python
with optimizations, Python will remove
assert statements, potentially
allowing for unexpected behavior throughout the Ansible code base.
Instead of using
assert you should utilize simple
that result in raising an exception. There is a new exception called
AnsibleAssertionError that inherits from
AssertionError. When possible, utilize a more specific exception
Modules will not have access to
AnsibleAssertionError and should instead
AssertionError, a more specific exception, or just use
module.fail_json at the failure point.