charm fails to install on Ubuntu 18.04

Bug #1939342 reported by Brian Murray
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Cassandra Juju Charm
Fix Released
Undecided
Unassigned

Bug Description

The install hook is failing:

2021-08-09 18:02:26 INFO juju.worker.uniter resolver.go:148 found queued "install" hook
2021-08-09 18:03:57 WARNING unit.cassandra/7.install logger.go:60 Command "/var/lib/juju/agents/unit-cassandra-7/.venv/bin/python3 -m pip install --ignore-installed --no-user --prefix /tmp/pip-build-env-xbp4ysnr --no-warn-script-location --no-binary :none: --only-binary :none: --no-index --find-links wheelhouse -- setuptools>=42 wheel setuptools_scm[toml]>=3.4.1" failed with error code 1 in None
2021-08-09 18:03:57 WARNING unit.cassandra/7.install logger.go:60 Injecting environment variables (in lib/charms/__init__.py)
2021-08-09 18:03:57 WARNING unit.cassandra/7.install logger.go:60 Traceback (most recent call last):
2021-08-09 18:03:57 WARNING unit.cassandra/7.install logger.go:60 File "/var/lib/juju/agents/unit-cassandra-7/charm/hooks/install", line 8, in <module>
2021-08-09 18:03:57 WARNING unit.cassandra/7.install logger.go:60 basic.bootstrap_charm_deps()
2021-08-09 18:03:57 WARNING unit.cassandra/7.install logger.go:60 File "lib/charms/layer/basic.py", line 214, in bootstrap_charm_deps
2021-08-09 18:03:57 WARNING unit.cassandra/7.install logger.go:60 env=_get_subprocess_env())
2021-08-09 18:03:57 WARNING unit.cassandra/7.install logger.go:60 File "/usr/lib/python3.6/subprocess.py", line 311, in check_call
2021-08-09 18:03:57 WARNING unit.cassandra/7.install logger.go:60 raise CalledProcessError(retcode, cmd)
2021-08-09 18:03:57 WARNING unit.cassandra/7.install logger.go:60 subprocess.CalledProcessError: Command '['/var/lib/juju/agents/unit-cassandra-7/.venv/bin/pip', 'install', '-U', '--force-reinstall', '--no-index', '--no-cache-dir', '-f', 'wheelhouse', 'netaddr==0.7.19', 'six==1.16.0', 'Jinja2==2.10.1', 'wheel==0.33.6', 'MarkupSafe==1.1.1', 'zipp==3.5.0', 'cassandra-driver==3.25.0', 'typing-extensions==3.10.0.0', 'geomet==0.2.1.post1', 'charms.reactive==1.4.1', 'tenacity==5.0.3', 'importlib-metadata==4.6.3', 'pbr==5.6.0', 'PyYAML==5.2', 'charmhelpers==0.20.22', 'click==8.0.1', 'pyaml==20.4.0', 'Tempita==0.5.2']' returned non-zero exit status 1.

Running the same pip install command the following error is returned:

ubuntu@juju-b7a87c-stg-error-tracker-83:~$ /var/lib/juju/agents/unit-cassandra-7/.venv/bin/pip install -U --force-reinstall --no-index --no-
cache-dir -f /var/lib/juju/agents/unit-cassandra-7/charm/wheelhouse geomet==0.2.1.post1 six==1.16.0 click==8.0.1 charms.reactive==1.4.1 MarkupSafe==1.1.1 charmhelpers==0.20.22 pyaml==20.4.0 Tempita==0.5.2 PyYAML==5.2 wheel==0.33.6 typing-extensions==3.10.0.0 pbr==5.6.0 cassandra-driver==3.25.0 Jinja2==2.10.1 zipp==3.5.0 tenacity==5.0.3 netaddr==0.7.19 import-metadata==4.6.3
Looking in links: /var/lib/juju/agents/unit-cassandra-7/charm/wheelhouse
Collecting geomet==0.2.1.post1
Collecting six==1.16.0
Collecting click==8.0.1
Collecting charms.reactive==1.4.1
Collecting MarkupSafe==1.1.1
Collecting charmhelpers==0.20.22
Collecting pyaml==20.4.0
Collecting Tempita==0.5.2
Collecting PyYAML==5.2
Collecting wheel==0.33.6
Collecting typing-extensions==3.10.0.0
Collecting pbr==5.6.0
Collecting cassandra-driver==3.25.0
Collecting Jinja2==2.10.1
Collecting zipp==3.5.0
  Installing build dependencies ... error
  Complete output from command /var/lib/juju/agents/unit-cassandra-7/.venv/bin/python3 -m pip install --ignore-installed --no-user --prefix /tmp/pip-build-env-_5z9khyy --no-warn-script-location --no-binary :none: --only-binary :none: --no-index --find-links /var/lib/juju/agents/unit-cassandra-7/charm/wheelhouse -- setuptools>=42 wheel setuptools_scm[toml]>=3.4.1:
  Looking in links: /var/lib/juju/agents/unit-cassandra-7/charm/wheelhouse
  Collecting setuptools>=42
    Could not find a version that satisfies the requirement setuptools>=42 (from versions: scm-1.17.0, 41.6.0)
  No matching distribution found for setuptools>=42

  ----------------------------------------
Command "/var/lib/juju/agents/unit-cassandra-7/.venv/bin/python3 -m pip install --ignore-installed --no-user --prefix /tmp/pip-build-env-_5z9khyy --no-warn-script-location --no-binary :none: --only-binary :none: --no-index --find-links /var/lib/juju/agents/unit-cassandra-7/charm/wheelhouse -- setuptools>=42 wheel setuptools_scm[toml]>=3.4.1" failed with error code 1 in None

I guess something is dependent upon a later version of setuptools than is included in the wheelhouse directory.

Revision history for this message
Tom Haddon (mthaddon) wrote :

In a "built" version of the charm I see the following in `wheelhouse.txt`:
```
# layer:basic
# pip is pinned to <19.0 to avoid https://github.com/pypa/pip/issues/6164
# even with installing setuptools before upgrading pip ends up with pip seeing
# the older setuptools at the system level if include_system_packages is true
pip>=18.1,<19.0
# pin Jinja2, PyYAML and MarkupSafe to the last versions supporting python 3.5
# for trusty
Jinja2<=2.10.1
PyYAML<=5.2
MarkupSafe<2.0.0
setuptools<42
setuptools-scm<=1.17.0
charmhelpers>=0.4.0,<1.0.0
charms.reactive>=0.1.0,<2.0.0
wheel<0.34
# pin netaddr to avoid pulling importlib-resources
netaddr<=0.7.19

# layer:snap
# Newer versions of tenacity rely on `typing` which is in stdlib in
# python3.5 but not python3.4. We want to continue to support
# python3.4 (Trusty)
tenacity<5.0.4

# cassandra
cassandra-driver
```
So it looks like this is coming from layer:basic. I'm not very familiar with this but will see who I can chat with about this and what I can figure out about where to go from here.

Revision history for this message
Tom Haddon (mthaddon) wrote (last edit ):

I've downloaded cs:cassandra-57 locally, added the `lib/apache.key` from the latest commit to the code, and then done a deployment of that on LXD and it seems to work fine on bionic.

This points further to an issue with one of the layers, will need to follow up.

Revision history for this message
Tom Haddon (mthaddon) wrote :

This has now been fixed in cs:cassandra-59

Changed in cassandra-charm:
status: New → Fix Released
Revision history for this message
Brian Murray (brian-murray) wrote :

The fix worked for me, thanks!

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.