为什么AWS CLI pip软件包安装会安装一个它可以安装的六个软件包';我没用?

为什么AWS CLI pip软件包安装会安装一个它可以安装的六个软件包';我没用?,pip,aws-cli,six,Pip,Aws Cli,Six,每当我使用更新AWS CLI时 pip install -U awscli 它将多个软件包降级(colorama、dill、rsa、和websocket客户端),并将six升级为无法使用的版本(1.9.0)。更新后,如果我尝试使用AWS CLI(例如,eb status),我会 回溯(最近一次呼叫最后一次): 文件“/usr/local/bin/eb”,第5行,在 从打包资源导入加载入口点 文件“/Library/Python/2.7/site packages/pkg_resources/_

每当我使用更新AWS CLI时

pip install -U awscli
它将多个软件包降级(
colorama
dill
rsa
、和
websocket客户端
),并将
six
升级为无法使用的版本(1.9.0)。更新后,如果我尝试使用AWS CLI(例如,
eb status
),我会

回溯(最近一次呼叫最后一次):
文件“/usr/local/bin/eb”,第5行,在
从打包资源导入加载入口点
文件“/Library/Python/2.7/site packages/pkg_resources/__init__.py”,第3018行,在
工作集=工作集。_build_master()
文件“/Library/Python/2.7/site-packages/pkg_-resources/_-init__.py”,第614行,在_-build_-master中
从需求返回cls.\u构建需求(\u需要\u)
文件“/Library/Python/2.7/site packages/pkg_resources/_init__.py”,第627行,在“构建自”需求中
dists=ws.resolve(请求,环境())
文件“/Library/Python/2.7/site packages/pkg_resources/_init__.py”,第805行,解析
未找到提升分配(req)
pkg_resources.DistributionNotFound:six==1.8.0
为了让AWS CLI再次工作,我必须将
six
降级到1.8.0(其他软件包可以再次升级到当前版本,不会产生不良影响)。但是
awscli
(在过去六年左右)的下一次更新总是会使当前的(但AWS CLI无法使用的)再次出现


这是怎么回事?
awscli
包中是否存在错误?其他人有没有遇到过这种情况?

这实际上是
awsebcli
软件包的安装脚本中的一个bug,它已经存在。

您可以在userdata脚本中使用以下技巧来避免这种情况

pip install six==1.8.0
pip install awscli

注意。

如果已安装Python 3,请使用


pip3安装awscli

我不确定自己是否理解:什么是“用户数据脚本”。关键是要避免降级。是的,更新cli解决了问题:
pip安装——升级awsebcli
pip install six==1.8.0
pip install awscli