我的工作与所有教程完全一样,没有错别字,甚至能够独自运行main.yml inside/角色/x
但是,当我运行应该称呼它的剧本时 - 什么都没有发生
父母
---
- name: Install / Upgrade tagger
hosts: tagger
roles:
- tagger
/roles/tagger/tasks/main.yml
---
- command: echo 1
需要说我正在Localhost运行所有内容。也尝试了
ansible-playbook -i "localhost" -c local tagger.yml
Ansible -Playbook -i" localhost" -c local tagger.yml
[WARNING]: Host file not found: localhost
[WARNING]: provided hosts list is empty, only localhost is available
PLAY [build tagger docker] *****************************************************
TASK [setup] *******************************************************************
ok: [localhost]
PLAY RECAP *********************************************************************
localhost : ok=1 changed=0 unreachable=0 failed=0
使用您给出的命令行:
$ ansible-playbook -i "localhost" -c local tagger.yml
ERROR: Unable to find an inventory file, specify one with -i ?
有明显的校正(添加逗号):
$ ansible-playbook -i "localhost," -c local tagger.yml
PLAY [Install / Upgrade tagger] ***********************************************
skipping: no hosts matched
PLAY RECAP ********************************************************************
仍然不符合您的输出,但确实表明了问题。localhost
永远不会tagger
。也许您正在使用hosts.ini
文件而不是告诉我们它?还是与我的特定版本的特定版本?无论如何,我将hosts: tagger
更改为hosts: all
,如下所示:
---
- name: Install / Upgrade tagger
hosts: all
roles:
- tagger
i然后reran:
$ ansible-playbook -i "localhost," -c local tagger.yml
PLAY [Install / Upgrade tagger] ***********************************************
GATHERING FACTS ***************************************************************
ok: [localhost]
TASK: [tagger | command echo 1] ***********************************************
changed: [localhost]
PLAY RECAP ********************************************************************
localhost : ok=2 changed=1 unreachable=0 failed=0
因此有两个修复程序。