gpt4 book ai didi

ansible - 剧本检查

转载 作者:行者123 更新时间:2023-12-02 04:43:03 24 4
gpt4 key购买 nike

我想检查剧本以检测以下几种可能性:

  1. undefined variable
  2. 未使用的变量
  3. 查看定义的变量在忽略大小写时是否相同(以下是冲突变量)

我无法弄清楚执行此操作的好方法是什么?我不想重新发明轮子,在这个意义上:

  1. 我不想进行文本处理。 Ansible 这样做是为了完成它的任务。
  2. 如果我没记错的话, Hook 或回调比我认为我的解决方案应该跳入的水平高几个级别。

我的意图是编写一个可以无缝地、可选地与 ansible 一起工作的工具。如果可以的话,我不想修改 ansible 的代码。

如有任何帮助、技巧或建议,我们将不胜感激。

PS:语法检查不会告诉我上面提到的内容。我看过 ansible-lint工具。它进行文本处理,不支持库存(对于 host_vars 等)并且不使用 ansible python API。因此,为了完成我需要的工作,我必须调用 ansible 的许多内部 API,最终我会在我的工具中编写 ansible 的代码。

最佳答案

  1. undefined variable :您需要执行剧本才能了解 undefined variable 。例如我们有:剧本:

    • 模板:src=foo.j2 dest=/etc/file.conf owner=bin group=wheel mode=0644

foo.j2:{{e}}

你还有magic variables :ansible_distribution_release有时它没有在没有安装 lsb_release 的主机上定义

如果你想死于未设置的变量,你也可以在运行时设置变量 -e您也可以通过库存设置变量!

  1. 未使用的变量根据环境,您可以不使用任何东西,也可以在禁用时使用:

    • 设定事实:vagrant_arch_ext="x86_64"什么时候:ansible_architecture == "x86_64"标签:
      • 流浪汉

还有默认变量。

  1. 查看定义的变量在忽略大小写时是否相同(冲突的变量此后)不明白

关于ansible - 剧本检查,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35863234/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com