unit-docker-20: 04:16:43 DEBUG unit.docker/20.upgrade-charm Reading package lists...
unit-docker-20: 04:16:43 DEBUG unit.docker/20.upgrade-charm Building dependency tree...
unit-docker-20: 04:16:43 DEBUG unit.docker/20.upgrade-charm Reading state information...
unit-docker-20: 04:16:43 DEBUG unit.docker/20.upgrade-charm build-essential is already the newest version (12.4ubuntu1).
unit-docker-20: 04:16:43 DEBUG unit.docker/20.upgrade-charm python3-setuptools is already the newest version (39.0.1-2).
unit-docker-20: 04:16:43 DEBUG unit.docker/20.upgrade-charm python3-yaml is already the newest version (3.12-1build2).
unit-docker-20: 04:16:43 DEBUG unit.docker/20.upgrade-charm python3-wheel is already the newest version (0.30.0-0.2).
unit-docker-20: 04:16:43 DEBUG unit.docker/20.upgrade-charm python3-dev is already the newest version (3.6.7-1~18.04).
unit-docker-20: 04:16:43 DEBUG unit.docker/20.upgrade-charm python3-pip is already the newest version (9.0.1-2.3~ubuntu1.18.04.1).
unit-docker-20: 04:16:43 DEBUG unit.docker/20.upgrade-charm 0 upgraded, 0 newly installed, 0 to remove and 30 not upgraded.
unit-docker-20: 04:16:43 DEBUG unit.docker/20.upgrade-charm Reading package lists...
unit-docker-20: 04:16:44 DEBUG unit.docker/20.upgrade-charm Building dependency tree...
unit-docker-20: 04:16:44 DEBUG unit.docker/20.upgrade-charm Reading state information...
unit-docker-20: 04:16:44 DEBUG unit.docker/20.upgrade-charm 0 upgraded, 0 newly installed, 0 to remove and 30 not upgraded.
unit-docker-20: 04:16:44 DEBUG unit.docker/20.upgrade-charm Looking in links: wheelhouse
unit-docker-20: 04:16:44 DEBUG unit.docker/20.upgrade-charm Requirement already up-to-date: pip in /var/lib/juju/agents/unit-docker-20/.venv/lib/python3.6/site-packages (18.1)
unit-docker-20: 04:16:45 DEBUG unit.docker/20.upgrade-charm Looking in links: wheelhouse
unit-docker-20: 04:16:45 DEBUG unit.docker/20.upgrade-charm Requirement already up-to-date: setuptools in /var/lib/juju/agents/unit-docker-20/.venv/lib/python3.6/site-packages (41.6.0)
unit-docker-20: 04:16:45 DEBUG unit.docker/20.upgrade-charm Requirement already up-to-date: setuptools-scm in /var/lib/juju/agents/unit-docker-20/.venv/lib/python3.6/site-packages (1.17.0)
unit-docker-20: 04:16:45 DEBUG unit.docker/20.upgrade-charm Looking in links: wheelhouse
unit-docker-20: 04:16:45 DEBUG unit.docker/20.upgrade-charm Processing ./wheelhouse/charms.reactive-1.3.0.tar.gz
unit-docker-20: 04:16:46 DEBUG unit.docker/20.upgrade-charm Processing ./wheelhouse/setuptools-20.0.tar.gz
unit-docker-20: 04:16:46 DEBUG unit.docker/20.upgrade-charm Processing ./wheelhouse/certifi-2019.11.28.tar.gz
unit-docker-20: 04:16:46 DEBUG unit.docker/20.upgrade-charm Processing ./wheelhouse/netaddr-0.7.19.tar.gz
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm Processing ./wheelhouse/Tempita-0.5.2.tar.gz
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm Processing ./wheelhouse/requests-2.22.0.tar.gz
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm Complete output from command python setup.py egg_info:
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm /usr/lib/python3.6/distutils/dist.py:261: UserWarning: Unknown distribution option: 'long_description_content_type'
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm warnings.warn(msg)
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm Traceback (most recent call last):
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm File "/var/lib/juju/agents/unit-docker-20/.venv/lib/python3.6/site-packages/pkg_resources/__init__.py", line 2388, in resolve
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm return functools.reduce(getattr, self.attrs, module)
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm AttributeError: module 'setuptools.dist' has no attribute 'check_specifier'
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm During handling of the above exception, another exception occurred:
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm Traceback (most recent call last):
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm File "<string>", line 1, in <module>
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm File "/tmp/pip-req-build-0lq8dr0_/setup.py", line 106, in <module>
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm 'socks:sys_platform == "win32" and python_version == "2.7"': ['win_inet_pton'],
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm File "/usr/lib/python3.6/distutils/core.py", line 108, in setup
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm _setup_distribution = dist = klass(attrs)
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm File "/var/lib/juju/agents/unit-docker-20/.venv/lib/python3.6/site-packages/setuptools/dist.py", line 272, in __init__
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm _Distribution.__init__(self,attrs)
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm File "/usr/lib/python3.6/distutils/dist.py", line 281, in __init__
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm self.finalize_options()
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm File "/var/lib/juju/agents/unit-docker-20/.venv/lib/python3.6/site-packages/setuptools/dist.py", line 327, in finalize_options
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm ep.load()(self, ep.name, value)
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm File "/var/lib/juju/agents/unit-docker-20/.venv/lib/python3.6/site-packages/pkg_resources/__init__.py", line 2380, in load
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm return self.resolve()
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm File "/var/lib/juju/agents/unit-docker-20/.venv/lib/python3.6/site-packages/pkg_resources/__init__.py", line 2390, in resolve
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm raise ImportError(str(exc))
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm ImportError: module 'setuptools.dist' has no attribute 'check_specifier'
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm ----------------------------------------
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-req-build-0lq8dr0_/
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm Traceback (most recent call last):
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm File "/var/lib/juju/agents/unit-docker-20/charm/hooks/upgrade-charm", line 8, in <module>
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm basic.bootstrap_charm_deps()
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm File "lib/charms/layer/basic.py", line 117, in bootstrap_charm_deps
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm '-f', 'wheelhouse'] + glob('wheelhouse/*'))
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm File "/usr/lib/python3.6/subprocess.py", line 311, in check_call
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm raise CalledProcessError(retcode, cmd)
unit-docker-20: 04:16:47 DEBUG unit.docker/20.upgrade-charm subprocess.CalledProcessError: Command '['/var/lib/juju/agents/unit-docker-20/.venv/bin/pip', 'install', '-U', '--ignore-installed', '--no-index', '-f', 'wheelhouse', 'wheelhouse/charms.reactive-1.3.0.tar.gz', 'wheelhouse/setuptools-20.0.tar.gz', 'wheelhouse/certifi-2019.11.28.tar.gz', 'wheelhouse/netaddr-0.7.19.tar.gz', 'wheelhouse/Tempita-0.5.2.tar.gz', 'wheelhouse/requests-2.22.0.tar.gz', 'wheelhouse/pyaml-19.12.0.tar.gz', 'wheelhouse/vcversioner-2.16.0.0.tar.gz', 'wheelhouse/chardet-3.0.4.tar.gz', 'wheelhouse/idna-2.8.tar.gz', 'wheelhouse/charmhelpers-0.20.7.tar.gz', 'wheelhouse/setuptools_scm-1.17.0.tar.gz', 'wheelhouse/setuptools-41.6.0.zip', 'wheelhouse/charms.templating.jinja2-1.0.2.tar.gz', 'wheelhouse/pip-18.1.tar.gz', 'wheelhouse/PyYAML-5.3.tar.gz', 'wheelhouse/MarkupSafe-1.1.1.tar.gz', 'wheelhouse/six-1.13.0.tar.gz', 'wheelhouse/urllib3-1.25.7.tar.gz', 'wheelhouse/wheel-0.33.6.tar.gz', 'wheelhouse/charms.docker-0.1.19.tar.gz', 'wheelhouse/Jinja2-2.10.3.tar.gz']' returned non-zero exit status 1.
unit-docker-20: 04:16:47 ERROR juju.worker.uniter.operation hook "upgrade-charm" failed: exit status 1
Looking around, it seems that upgrading pip can solve this error, but I ran `sudo /var/lib/juju/agents/unit-docker-20/.venv/bin/pip install --upgrade pip` on the unit and it didn't help.
Figured this out, it wasn't an old pip, but an old setuptools.
``` juju/agents/ unit-docker- 97/.venv/ 46.0.0- py3-none- any.whl (582 kB) ███████ ███████ ███████ ███████ ███| 582 kB 1.5 MB/s
cd /var/lib/
$ sudo ./bin/pip3 install --upgrade setuptools
Collecting setuptools
Downloading setuptools-
|█
Installing collected packages: setuptools
Attempting uninstall: setuptools
Found existing installation: setuptools 41.6.0
Uninstalling setuptools-41.6.0:
Successfully uninstalled setuptools-41.6.0
Successfully installed setuptools-46.0.0
$
```