禁止使用断言
在生产环境的 Ansible Python 代码中不要使用 assert
。当使用优化选项运行 Python 时,Python 会移除 assert
语句,这可能会导致 Ansible 代码库中出现意外的行为。
不要使用 assert
,而应该使用简单的 if
语句,并在发生错误时抛出异常。有一个新的异常叫做 AnsibleAssertionError
,它继承自 AnsibleError
和 AssertionError
。如果可能,请使用比 AnsibleAssertionError
更具体的异常。
模块无法访问 AnsibleAssertionError
,而应该抛出 AssertionError
、更具体的异常,或者在错误点使用 module.fail_json
。