我的需求:编写一个剧本,如果用户愿意,可以在剧本运行时通过键入 yes 或 no 来安装 apache。
apache_prompt.yml
hosts: slaves
vars_prompt:
- name: install_apache
prompt: "Do yo want to install apache? (yes/no)?"
tasks:
- name: if 'yes'
include_tasks: apache.yml
when: install_apache == 'yes'
阿帕奇.yml
---
- name: apache install
apt:
name: apache2
state: present
这些剧本集成在角色文件夹“apache”中
我的/tasks/main.yml
---
- import_tasks: apache_prompt.yml
我的主要剧本,由于角色的原因,我用它来安装一些东西:
- hosts: slaves
roles:
- ntp
- nmap
- tcpdump
- unattended-upgrades
- apache
我只对 apache 角色有疑问。
- - - - - - - - - 编辑 - - - - - - - - - -
自从我写了我的问题以来,我遇到了语法错误。我尝试修改
apache_prompt.yml
直到现在我收到了这个错误:错误!任务中未检测到任何操作。这通常表示模块名称拼写错误或模块路径不正确。
---
- hosts: slaves
vars_prompt:
- name: "install_apache"
prompt: "Do yo want to install apache? (yes/no)?"
tasks:
- include_tasks: apache.yml
when: install_apache == 'yes'