Ansible验证所需的Extra-var

时间:2018-08-28 05:22:32

标签: ansible ansible-2.x

我有一个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}}"}

1 个答案:

答案 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}}"}