我正在尝试使用ansible-galaxy(https://github.com/gotansible/runit)角色来协助runit
服务监视器。
从他们的自述文件中,我想到了这作为我的任务:
- name: runit gunicorn
#this command/module(? not sure about term) is provided by gotansible.runit
runit:
command: "gunicorn websec.wsgi -c /etc/gunicorn/gunicorn.conf"
state: up
tags:
- failing
但是当我运行剧本时,我得到了:
FAILED! => {"changed": false,
"msg": "Unsupported parameters for (runit) module: command
Supported parameters include: dist, enabled, name, service_dir, service_src, state"}
当您查看内置的runit模块支持https://docs.ansible.com/ansible/2.5/modules/runit_module.html
时,这很有意义是否有办法将ansible指向gotansible.runit
的模块,而不是Ansible的内置模块?
都不是
- name: runit gunicorn
gotansible.runit:
或
- name: runit gunicorn
gotansible_runit:
似乎有很大帮助。
这只是一些快速的实验,我可能会避免使用这个看起来似乎从未维护过的角色。但是我很好奇如何处理名称冲突。 https://github.com/ksator/junos-automation-with-ansible/blob/master/README.md例如说他们重命名了一些模块以避免名称冲突。
答案 0 :(得分:0)
角色必须这样打电话
hosts: server
roles:
- { role: gotansible.runit }
如https://github.com/gotansible/runit主页上所述。
您需要将参数传递给角色,您可以这样做
hosts: server
roles:
- { role: gotansible.runit, state: once, name: foo }
有空的时候
- runit:
name: foo
state: started
您正在整理runit内置模块
有关https://docs.ansible.com/ansible/latest/user_guide/playbooks_reuse_roles.html上角色的更多信息