我在handlers / main.yml中建立了一些角色,我已经散布了一些处理程序作业,但无法执行它们。这是错误消息:
错误!角色“ sample-mysql”的handlers / main.yml文件必须包含 任务列表
错误似乎出在'/home/automation/plays/roles/sample-mysql/handlers/main.yml'中:第2行,第3列,但可能在文件的其他位置,具体取决于确切的语法问题。
The offending line appears to be:
---
handlers:
^ here
我做了一些更改,但仍然无法正常工作。我还希望该文件从另一个文件加载处理程序。有可能这样做吗?例如-include:指令
---
handlers:
- name: "Start mysql"
service:
enabled: true
name: mysqld
state: started
- name: "Start firewalld"
service:
enabled: true
name: firewalld
state: started
错误!角色“ sample-mysql”的handlers / main.yml文件必须包含 任务列表
错误似乎出在'/home/automation/plays/roles/sample-mysql/handlers/main.yml'中:第2行,第3列,但可能在文件的其他位置,具体取决于确切的语法问题。
违规行似乎是:
---
handlers:
^ here
答案 0 :(得分:0)
您的角色中有一个文件:handlers/main.yml
。
编辑该文件,然后添加以下任务:
---
- name: a task
shell: echo
保存
答案 1 :(得分:0)
处理程序文件位置为 /repo_name/roles/sample-mysql/handlers/main.yaml
在main.yaml内添加以下内容。
---
- name: Start mysql
service:
name: mysqld
state: started
enabled: true
要调用此处理程序,请在您的主要剧本中加入以下内容: /repo_name/roles/sample-mysql/tasks/main.yaml
notify: "Restart iis service"
您不能简单地执行处理程序。在sample-mysql文件夹中,应该有称为任务和处理程序的文件夹。