Does not deploy on Xenial due to MarkupSafe dependency relying on Python 3.6
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
EasyRSA Charm |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
I tried to deploy easyrsa on a Xenial LXD recently for test purposes, and found that it no longer deploys cleanly on Xenial. It does deploy fine on Bionic and Focal.
On Xenial, I can see this in the Juju unit log, assuming the unit log level is set to debug:
2021-07-22 20:47:09 DEBUG install Collecting MarkupSafe
2021-07-22 20:47:10 DEBUG install Complete output from command python setup.py egg_info:
2021-07-22 20:47:10 DEBUG install Traceback (most recent call last):
2021-07-22 20:47:10 DEBUG install File "<string>", line 1, in <module>
2021-07-22 20:47:10 DEBUG install File "/tmp/pip-
2021-07-22 20:47:10 DEBUG install run_setup(True)
2021-07-22 20:47:10 DEBUG install File "/tmp/pip-
2021-07-22 20:47:10 DEBUG install ext_modules=
2021-07-22 20:47:10 DEBUG install File "/var/lib/
2021-07-22 20:47:10 DEBUG install return distutils.
2021-07-22 20:47:10 DEBUG install File "/usr/lib/
2021-07-22 20:47:10 DEBUG install dist.parse_
2021-07-22 20:47:10 DEBUG install File "/var/lib/
2021-07-22 20:47:10 DEBUG install ignore_
2021-07-22 20:47:10 DEBUG install File "/var/lib/
2021-07-22 20:47:10 DEBUG install meta.parse()
2021-07-22 20:47:10 DEBUG install File "/var/lib/
2021-07-22 20:47:10 DEBUG install section_
2021-07-22 20:47:10 DEBUG install File "/var/lib/
2021-07-22 20:47:10 DEBUG install self[name] = value
2021-07-22 20:47:10 DEBUG install File "/var/lib/
2021-07-22 20:47:10 DEBUG install value = parser(value)
2021-07-22 20:47:10 DEBUG install File "/var/lib/
2021-07-22 20:47:10 DEBUG install version = self._parse_
2021-07-22 20:47:10 DEBUG install File "/var/lib/
2021-07-22 20:47:10 DEBUG install module = import_
2021-07-22 20:47:10 DEBUG install File "/var/lib/
2021-07-22 20:47:10 DEBUG install return _bootstrap.
2021-07-22 20:47:10 DEBUG install File "<frozen importlib.
2021-07-22 20:47:10 DEBUG install File "<frozen importlib.
2021-07-22 20:47:10 DEBUG install File "<frozen importlib.
2021-07-22 20:47:10 DEBUG install File "<frozen importlib.
2021-07-22 20:47:10 DEBUG install File "<frozen importlib.
2021-07-22 20:47:10 DEBUG install File "<frozen importlib.
2021-07-22 20:47:10 DEBUG install File "<frozen importlib.
2021-07-22 20:47:10 DEBUG install File "<frozen importlib.
2021-07-22 20:47:10 DEBUG install File "/tmp/pip-
2021-07-22 20:47:10 DEBUG install return f"{self.
2021-07-22 20:47:10 DEBUG install ^
2021-07-22 20:47:10 DEBUG install SyntaxError: invalid syntax
2021-07-22 20:47:10 DEBUG install
2021-07-22 20:47:10 DEBUG install -------
2021-07-22 20:47:10 WARNING install Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-
2021-07-22 20:47:10 WARNING install Traceback (most recent call last):
2021-07-22 20:47:10 WARNING install File "/var/lib/
2021-07-22 20:47:10 WARNING install basic.bootstrap
2021-07-22 20:47:10 WARNING install File "lib/charms/
2021-07-22 20:47:10 WARNING install env=_get_
2021-07-22 20:47:10 WARNING install File "/usr/lib/
2021-07-22 20:47:10 WARNING install raise CalledProcessEr
2021-07-22 20:47:10 WARNING install subprocess.
2021-07-22 20:47:10 ERROR juju.worker.
The error occurs due to a Python 3.6 f-string, which won't work on Xenial's Python 3.5.
It may be necessary to pin MarkupSafe to an older version to preserve Xenial support for this charm.
Alternatively, xenial could be removed as a supported release for easyrsa.