no-assert
不要在生产环境的 Ansible Python 代码中使用 assert
。当使用优化运行 Python 时,Python 将删除 assert
语句,这可能会导致 Ansible 代码库中出现意外行为。
您应该使用简单的 if
语句来代替使用 assert
,这将导致引发异常。有一个名为 AnsibleAssertionError
的新异常,它继承自 AnsibleError
和 AssertionError
。如果可能,请使用比 AnsibleAssertionError
更具体的异常。
模块将无法访问 AnsibleAssertionError
,而应引发 AssertionError
,更具体的异常,或者直接在失败点使用 module.fail_json
。