我有一个Ansible剧本,我在其中导入其他Ansible剧本,并且从命令行中获取了一些额外的变量。我希望他们是必需的。
- import_playbook: nginx.yml
test_first="test first"
- import_playbook: nginx1.yml
test_two={"hello":"{{test}}"}
我将test
作为命令行的额外变量。我希望它是必需的。
我尝试了以下代码,但出现错误:
- import_playbook: nginx.yml
test_first="test first"
tasks:
- fail: msg="Error"
when: not (test is defined)
- import_playbook: nginx1.yml
test_two={"hello":"{{test}}"}
答案 0 :(得分:0)
tasks
应该是戏剧中的关键,因此您必须定义一个戏剧,例如:
- import_playbook: nginx.yml
test_first="test first"
- hosts: localhost
gather_facts: false
connection: local
tasks:
- fail: msg="Error"
when: not (test is defined)
- import_playbook: nginx1.yml
test_two={"hello":"{{test}}"}