【发布时间】:2019-09-29 15:58:55
【问题描述】:
我正在使用 Ansible 配置一个 Vagrant 框 (ubuntu/trusty64)。
执行以下剧本时:
---
- hosts: all
tasks:
- name: install pip
easy_install:
name: pip
state: present
- name: install gunicorn and flask
pip: name={{ item }}
with_items:
- gunicorn
- flask
我收到以下错误:
未能在路径中找到所需的可执行文件 easy_install
在寻找解决方案时我发现了this stackoverflow thread,这表明使用easy_install 已经过时了。
我在 Ansible easy_install docs 中没有找到任何提示。
任何帮助将不胜感激。
我的流浪文件:
Vagrant.configure("2") do |config|
config.vm.box = "ubuntu/trusty64"
config.vm.network "forwarded_port", guest: 80, host: 8080
config.vm.provision :ansible do |ansible|
ansible.playbook = "playbook.yml"
end
end
运行:
Ansible 2.7.10。
流浪者 2.0.2.
提到的错误的完整堆栈跟踪:
TASK [安装 pip]
致命:[默认]:失败! => {"changed": false, "msg": "找不到 路径中所需的可执行文件easy_install: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"} 要重试,请使用:--limit @/home/workspaces/python_flask/playbook.retry
播放回顾
【问题讨论】:
-
easy_install根本没有安装在您的基本 vagrant box 上。 -
... 或在配置的路径中找不到。尽管它是一种过时的方法,但 module still exists。如果你最近有一个已经安装了 python 的盒子,那么 pip 很可能已经在那里,你可以跳过你的第一个任务。
-
@Zeitounator,你是对的,它不是核心模块的一部分——我的错。您能否发布您的 cmets 作为答案并提及这一事实以供其他人查看?