0

我正在使用下面的 ansible yml 文件来安装 python、pip 等。

roles/python/main.yml

---

- name: python
  apt:
    pkg: python

- name: python-pip
  apt:
    pkg: python-pip

- name: mongopy
  pip:
    pkg: mongopy

- name: mtools
  pip:
    pkg: mtools

当我ansible-playbook在这个脚本上运行时,我得到以下

PLAY [ec2] ***********************************************************************************************************************************************************************************************

TASK [Gathering Facts] ***********************************************************************************************************************************************************************************
ok: [xxxxx.ap-southeast-2.compute.amazonaws.com]

PLAY RECAP ***********************************************************************************************************************************************************************************************
xxxxxap-southeast-2.compute.amazonaws.com : ok=1    changed=0    unreachable=0    failed=0

它们没有错误,但我检查了这些应用程序没有安装在远程主机上。我的 yml 文件有什么问题?有什么地方可以检查错误是什么?

以下是我的剧本:

python.yml

---

- hosts: ec2
  remote_user: ubuntu
  roles:
    - python

下面是我运行的命令:

ansible-playbook -i hosts python.yml

4

1 回答 1

0

python您的角色中没有任务。请看一下角色结构

如果roles/x/tasks/main.yml存在,其中列出的任务将被添加到游戏中

任务文件 ( main.yml) 应该放在tasks角色的子目录中,而不是放在主角色的目录中。


这与您如何描述问题(安装 Python 或 Pip)无关。即使您将任务替换为默认debug显示的单个任务Hello world,它也不会运行。

于 2017-08-03T00:52:04.360 回答