install fails on xenial

Bug #1925384 reported by Guillermo Gonzalez
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Prometheus Charm
Won't Fix
Undecided
Unassigned

Bug Description

cs:prometheus-11 fails with:

unit-test-prometheus-1: 18:26:37 WARNING unit.test-prometheus/1.install Traceback (most recent call last):
unit-test-prometheus-1: 18:26:37 WARNING unit.test-prometheus/1.install File "/var/lib/juju/agents/unit-test-prometheus-1/charm/hooks/install", line 22, in <module>
unit-test-prometheus-1: 18:26:37 WARNING unit.test-prometheus/1.install main()
unit-test-prometheus-1: 18:26:37 WARNING unit.test-prometheus/1.install File "/var/lib/juju/agents/unit-test-prometheus-1/.venv/lib/python3.5/site-packages/charms/reactive/__init__.py", line 71, in main
unit-test-prometheus-1: 18:26:37 WARNING unit.test-prometheus/1.install bus.discover()
unit-test-prometheus-1: 18:26:37 WARNING unit.test-prometheus/1.install File "/var/lib/juju/agents/unit-test-prometheus-1/.venv/lib/python3.5/site-packages/charms/reactive/bus.py", line 426, in discover
unit-test-prometheus-1: 18:26:37 WARNING unit.test-prometheus/1.install _register_handlers_from_file(search_path, filepath)
unit-test-prometheus-1: 18:26:37 WARNING unit.test-prometheus/1.install File "/var/lib/juju/agents/unit-test-prometheus-1/.venv/lib/python3.5/site-packages/charms/reactive/bus.py", line 466, in _register_handlers_from_file
unit-test-prometheus-1: 18:26:37 WARNING unit.test-prometheus/1.install _load_module(root, filepath)
unit-test-prometheus-1: 18:26:37 WARNING unit.test-prometheus/1.install File "/var/lib/juju/agents/unit-test-prometheus-1/.venv/lib/python3.5/site-packages/charms/reactive/bus.py", line 444, in _load_module
unit-test-prometheus-1: 18:26:37 WARNING unit.test-prometheus/1.install return importlib.import_module(package + module)
unit-test-prometheus-1: 18:26:37 WARNING unit.test-prometheus/1.install File "/var/lib/juju/agents/unit-test-prometheus-1/.venv/lib/python3.5/importlib/__init__.py", line 126, in import_module
unit-test-prometheus-1: 18:26:37 WARNING unit.test-prometheus/1.install return _bootstrap._gcd_import(name[level:], package, level)
unit-test-prometheus-1: 18:26:37 WARNING unit.test-prometheus/1.install File "<frozen importlib._bootstrap>", line 986, in _gcd_import
unit-test-prometheus-1: 18:26:37 WARNING unit.test-prometheus/1.install File "<frozen importlib._bootstrap>", line 969, in _find_and_load
unit-test-prometheus-1: 18:26:37 WARNING unit.test-prometheus/1.install File "<frozen importlib._bootstrap>", line 958, in _find_and_load_unlocked
unit-test-prometheus-1: 18:26:37 WARNING unit.test-prometheus/1.install File "<frozen importlib._bootstrap>", line 673, in _load_unlocked
unit-test-prometheus-1: 18:26:37 WARNING unit.test-prometheus/1.install File "<frozen importlib._bootstrap_external>", line 665, in exec_module
unit-test-prometheus-1: 18:26:37 WARNING unit.test-prometheus/1.install File "<frozen importlib._bootstrap>", line 222, in _call_with_frames_removed
unit-test-prometheus-1: 18:26:37 WARNING unit.test-prometheus/1.install File "/var/lib/juju/agents/unit-test-prometheus-1/charm/hooks/relations/prometheus/operator.py", line 53, in <module>
unit-test-prometheus-1: 18:26:37 WARNING unit.test-prometheus/1.install from ops.framework import EventBase, ObjectEvents, EventSource, Object, StoredState
unit-test-prometheus-1: 18:26:37 WARNING unit.test-prometheus/1.install ImportError: No module named 'ops'

cs:prometheus-9 (or any older one), fails with:

unit-test-prometheus9-0: 18:30:34 DEBUG unit.test-prometheus9/0.install 2021-04-21T18:29:52Z INFO Waiting for automatic snapd restart...
unit-test-prometheus9-0: 18:30:34 DEBUG unit.test-prometheus9/0.install prometheus (2/stable) 2.20.1 from Canonical* installed
unit-test-prometheus9-0: 18:30:34 DEBUG unit.test-prometheus9/0.install
unit-test-prometheus9-0: 18:30:34 WARNING unit.test-prometheus9/0.install Traceback (most recent call last):
unit-test-prometheus9-0: 18:30:34 WARNING unit.test-prometheus9/0.install File "/var/lib/juju/agents/unit-test-prometheus9-0/charm/hooks/install", line 22, in <module>
unit-test-prometheus9-0: 18:30:34 WARNING unit.test-prometheus9/0.install main()
unit-test-prometheus9-0: 18:30:34 WARNING unit.test-prometheus9/0.install File "/var/lib/juju/agents/unit-test-prometheus9-0/.venv/lib/python3.5/site-packages/charms/reactive/__init__.py", line 73, in main
unit-test-prometheus9-0: 18:30:34 WARNING unit.test-prometheus9/0.install bus.dispatch(restricted=restricted_mode)
unit-test-prometheus9-0: 18:30:34 WARNING unit.test-prometheus9/0.install File "/var/lib/juju/agents/unit-test-prometheus9-0/.venv/lib/python3.5/site-packages/charms/reactive/bus.py", line 390, in dispatch
unit-test-prometheus9-0: 18:30:34 WARNING unit.test-prometheus9/0.install _invoke(other_handlers)
unit-test-prometheus9-0: 18:30:34 WARNING unit.test-prometheus9/0.install File "/var/lib/juju/agents/unit-test-prometheus9-0/.venv/lib/python3.5/site-packages/charms/reactive/bus.py", line 359, in _invoke
unit-test-prometheus9-0: 18:30:34 WARNING unit.test-prometheus9/0.install handler.invoke()
unit-test-prometheus9-0: 18:30:34 WARNING unit.test-prometheus9/0.install File "/var/lib/juju/agents/unit-test-prometheus9-0/.venv/lib/python3.5/site-packages/charms/reactive/bus.py", line 181, in invoke
unit-test-prometheus9-0: 18:30:34 WARNING unit.test-prometheus9/0.install self._action(*args)
unit-test-prometheus9-0: 18:30:34 WARNING unit.test-prometheus9/0.install File "/var/lib/juju/agents/unit-test-prometheus9-0/charm/reactive/prometheus.py", line 288, in write_prometheus_config_yml
unit-test-prometheus9-0: 18:30:34 WARNING unit.test-prometheus9/0.install ver_major, ver_minor, ver_patch = get_version()
unit-test-prometheus9-0: 18:30:34 WARNING unit.test-prometheus9/0.install File "/var/lib/juju/agents/unit-test-prometheus9-0/charm/reactive/prometheus.py", line 260, in get_version
unit-test-prometheus9-0: 18:30:34 WARNING unit.test-prometheus9/0.install output = subprocess.check_output([get_paths()['promtool'], 'version']).split(b'\n')[0]
unit-test-prometheus9-0: 18:30:34 WARNING unit.test-prometheus9/0.install File "/usr/lib/python3.5/subprocess.py", line 626, in check_output
unit-test-prometheus9-0: 18:30:34 WARNING unit.test-prometheus9/0.install **kwargs).stdout
unit-test-prometheus9-0: 18:30:34 WARNING unit.test-prometheus9/0.install File "/usr/lib/python3.5/subprocess.py", line 708, in run
unit-test-prometheus9-0: 18:30:34 WARNING unit.test-prometheus9/0.install output=stdout, stderr=stderr)
unit-test-prometheus9-0: 18:30:34 WARNING unit.test-prometheus9/0.install subprocess.CalledProcessError: Command '['/snap/bin/prometheus.promtool', 'version']' returned non-zero exit status 1
unit-test-prometheus9-0: 18:30:35 ERROR juju.worker.uniter.operation hook "install" (via explicit, bespoke hook script) failed: exit status 1

Revision history for this message
Guillermo Gonzalez (verterok) wrote :

using --config install_method=apt works

Changed in prometheus-charm:
status: New → Invalid
Changed in prometheus-charm:
status: Invalid → New
Revision history for this message
Guillermo Gonzalez (verterok) wrote :

Realized I have it installed in xenial, with the snap install_methpd, so it worked at some point but not enymore.

Revision history for this message
Guillermo Gonzalez (verterok) wrote :

The problems seems to be the default value for snap_channel="stable" which is now pointing at "2/stable".
Fixed my deploy issue by using "latest/stable"

Revision history for this message
Xav Paice (xavpaice) wrote :

For Prometheus 2, please use cs:prometheus2. The configurations are incompatible which is why there is an entirely separate charm.

Revision history for this message
Guillermo Gonzalez (verterok) wrote :

I'm trying to use cs:prometheus, which was deployed before (the current instance seems to be from 2020-01-15), but deploying the same charm (is part of a mojo spec) is failing with the above errors.
Looks like the reason is that the cs:prometheus charm defaults to the "stable" snap channel, which is now poitning to 2/stable and causes the deploy to fail.

Revision history for this message
Xav Paice (xavpaice) wrote :

Unfortunately the cs:prometheus charm is no longer maintained, I would suggest you migrate the mojo spec to use cs:prometheus2 unless there is a specific reason you still need the cs:prometheus charm. In terms of charm usage the two are very similar (though there may be new features in prometheus2 that aren't in the older charm), but the difference in config file format between the older and newer Prometheus necessitated a separate charm at the time rather than supporting both versions from the one charm.

Changed in prometheus-charm:
status: New → Invalid
status: Invalid → Won't Fix
Revision history for this message
Xav Paice (xavpaice) wrote :

As charm still works with deb install, and is no longer maintained, I've marked this as won't fix.

Revision history for this message
Guillermo Gonzalez (verterok) wrote :

Thanks for looking into it.
I understand the charm is not being maintained and cs:prometheus2 is the preferred one, but wanted to note that this is a regression breaking a previously working charm.

I can workaround it by changing the snap_channel for the time being, upgrading to cs:prometheus2 is not trivial, probably not upgradable. and it will need a redeploy of the unit.

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.