Search code examples
pipshippable-ci

Sudden failure on pip install of awsebcli NameError: name 'platform_system' is not defined


I have a Node app that's deployed via Shippable. A few weeks ago my builds started failing without any environmental changes (10/15/19 was last successful build)

I'm deploying to Node v 6.11.5, and it's failing on awsebcli install

The CI/CD pipeline requires AWS Elastic Beanstalk CLI and back when I set this up a while ago I figured we need a specific version below to make everything work with this Node version and all

pip install --force-reinstall awsebcli==3.14.5 is the line that fails, with the error

NameError: name 'platform_system' is not defined

I guess I'm hopeful that I just need to target a different version of awsebcli but I can't seem to figure out what to do

and the full error logs...

Downloading/unpacking docker-compose>=1.21.2,<1.22.0 (from awsebcli==3.14.5)
Downloading/unpacking blessed>=1.9.5 (from awsebcli==3.14.5)
Cleaning up...
Exception:
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/pip/basecommand.py", line 122, in main
    status = self.run(options, args)
  File "/usr/lib/python2.7/dist-packages/pip/commands/install.py", line 278, in run
    requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, bundle=self.bundle)
  File "/usr/lib/python2.7/dist-packages/pip/req.py", line 1266, in prepare_files
    req_to_install.extras):
  File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 2291, in requires
    dm = self._dep_map
  File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 2484, in _dep_map
    self.__dep_map = self._compute_dependencies()
  File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 2517, in _compute_dependencies
    common = frozenset(reqs_for_extra(None))
  File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 2514, in reqs_for_extra
    if req.marker_fn(override={'extra':extra}):
  File "/usr/share/python-wheels/setuptools-3.3-py2.py3-none-any.whl/_markerlib/markers.py", line 113, in marker_fn
    return eval(compiled_marker, environment)
  File "<environment marker>", line 1, in <module>
NameError: name 'platform_system' is not defined

Solution

  • setuptools-3.3 was released in 2014! Must be upgraded for sure:

    pip install --upgrade setuptools