未定义变量的Ansible语法检查
我有一本剧本,比如: myplaybook.yml未定义变量的Ansible语法检查,ansible,ansible-2.x,Ansible,Ansible 2.x,我有一本剧本,比如: myplaybook.yml --- - name: call another playbook hosts: 127.0.0.1 - include: "{{name}}-playbook.yml" when: name is defined 这里,我将cli中的'name'变量作为--extra-vars传递 它工作得很好。但是,当尝试使用下面的命令检查语法时,其给出的错误是名称未定义 Ansible-playbook --syntax myplaybook
---
- name: call another playbook
hosts: 127.0.0.1
- include: "{{name}}-playbook.yml"
when: name is defined
这里,我将cli中的'name'变量作为--extra-vars传递
它工作得很好。但是,当尝试使用下面的命令检查语法时,其给出的错误是名称未定义
Ansible-playbook --syntax myplaybook.yml
关于如何处理它有什么想法吗?您想检查什么语法?如果你有很多剧本,比如
name1 playbook.yml
和name2 playbook.yml
,Ansible如何猜出所有的名字并测试它们
如果只想测试其中一个,请为name
设置默认值,如:
- include: "{{ name | default('name1') }}-playbook.yml"
为什么不将语法检查的名称也传递给
--extra vars
?实际上我做不到。语法检查由我无法控制的其他系统执行。有解决办法吗?