我想检查一个剧本来检测以下几种可能性:
- 未定义的变量
- 未使用的变量
- 查看定义的 var 在忽略大小写时是否相同(此后有冲突的 var)
我无法弄清楚这样做的好方法是什么?我不想重新发明轮子,从某种意义上说:
- 我不想做文本处理。Ansible 这样做是为了完成它的任务。
- 如果我没记错的话,挂钩或回调比我认为我的解决方案应该加入的级别高几个级别。
我的目的是编写一个可以无缝且可选地与 ansible 配合使用的工具。如果可以,我不想修改 ansible 的代码。
任何帮助或黑客或建议表示赞赏。
PS:语法检查不会告诉我上面提到的内容。我已经查看了ansible-lint工具。它进行文本处理,不支持库存(用于 host_vars 等)并且不使用 ansible python API。所以为了做我需要的事情,我必须调用许多 ansible 的内部 API,我最终会在我的工具中编写 ansible 的代码。