2

每当我更新我的 AWS CLI 时

pip install -U awscli

它会降级几个包(coloramadillrsawebsocket-client)并升级six到它无法使用的版本(1.9.0)。更新后,如果我尝试使用 AWS CLI,(例如eb status)我得到

Traceback (most recent call last):
  File "/usr/local/bin/eb", line 5, in <module>
    from pkg_resources import load_entry_point
  File "/Library/Python/2.7/site-packages/pkg_resources/__init__.py", line 3018, in <module>
    working_set = WorkingSet._build_master()
  File "/Library/Python/2.7/site-packages/pkg_resources/__init__.py", line 614, in _build_master
    return cls._build_from_requirements(__requires__)
  File "/Library/Python/2.7/site-packages/pkg_resources/__init__.py", line 627, in _build_from_requirements
    dists = ws.resolve(reqs, Environment())
  File "/Library/Python/2.7/site-packages/pkg_resources/__init__.py", line 805, in resolve
    raise DistributionNotFound(req)
pkg_resources.DistributionNotFound: six==1.8.0

为了让 AWS CLI 再次运行,我必须降级six到 1.8.0(其他软件包可以再次升级到当前版本而不会产生不良影响)。但是下一次更新awscli(在过去的半打左右)总是把当前的——但 AWS CLI 无法使用的——再次带回来。

这里发生了什么?awscli包里有bug吗?其他人有过这种经历吗?

4

3 回答 3

1

这实际上是awsebcli包的安装脚本中的一个错误,现已修复

于 2015-02-19T14:03:17.267 回答
0

您可以在用户数据脚本中使用以下技巧来避免这种情况。

pip install six==1.8.0
pip install awscli

问候。

于 2015-05-21T18:56:51.870 回答
0

如果您安装了 Python 3,请使用

pip3 install awscli

于 2015-11-02T09:12:33.733 回答