#9053 ipa-healthcheck delivers same error as with start of ipa-custodia
Closed: worksforme by frenaud. Opened by beppo.

error

ipa-healthcheck and ipa-custodia are not working and deliver the same error message on fedora35

Actual behavior

[root@freeipa1]# ipa-healthcheck
Traceback (most recent call last):
File "/usr/lib/python3.10/site-packages/pkg_resources/init.py", line 2851, in get_entry_map
ep_map = self._ep_map
File "/usr/lib/python3.10/site-packages/pkg_resources/init.py", line 2813, in getattr
raise AttributeError(attr)
AttributeError: _ep_map. Did you mean: '_dep_map'?

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/usr/bin/ipa-healthcheck", line 33, in
sys.exit(load_entry_point('ipahealthcheck==0.9', 'console_scripts', 'ipa-healthcheck')())
File "/usr/lib/python3.10/site-packages/ipahealthcheck/core/main.py", line 46, in main
sys.exit(ipachecks.run_healthcheck())
File "/usr/lib/python3.10/site-packages/ipahealthcheck/core/core.py", line 310, in run_healthcheck
for name, registry in find_registries(self.entry_points).items():
File "/usr/lib/python3.10/site-packages/ipahealthcheck/core/core.py", line 28, in find_registries
registries.update({
File "/usr/lib/python3.10/site-packages/ipahealthcheck/core/core.py", line 28, in
registries.update({
File "/usr/lib/python3.10/site-packages/pkg_resources/init.py", line 641, in
for entry in dist.get_entry_map(group).values()
File "/usr/lib/python3.10/site-packages/pkg_resources/init.py", line 2853, in get_entry_map
ep_map = self._ep_map = EntryPoint.parse_map(
File "/usr/lib/python3.10/site-packages/pkg_resources/init.py", line 2538, in parse_map
raise ValueError("Entry points must be listed in groups")
ValueError: Entry points must be listed in groups
[root@freeipa1]#

[root@freeipa1 ipa-data-2021-12-02-22-27-24]# journalctl -xeu ipa-custodia.service
░░ The job identifier is 31598 and the job result is failed.
Dez 02 22:59:33 freeipa1.ipa.bepnet.private systemd[1]: ipa-custodia.service: Scheduled restart job, restart counter is at 185.
░░ Subject: Automatic restarting of a unit has been scheduled
░░ Defined-By: systemd
░░ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
░░
░░ Automatic restarting of the unit ipa-custodia.service has been scheduled, as the result for
░░ the configured Restart= setting for the unit.
Dez 02 22:59:33 freeipa1.ipa.bepnet.private systemd[1]: Stopped IPA Custodia Service.
░░ Subject: A stop job for unit ipa-custodia.service has finished
░░ Defined-By: systemd
░░ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
░░
░░ A stop job for unit ipa-custodia.service has finished.
░░
░░ The job identifier is 31813 and the job result is done.
Dez 02 22:59:33 freeipa1.ipa.bepnet.private systemd[1]: Starting IPA Custodia Service...
░░ Subject: A start job for unit ipa-custodia.service has begun execution
░░ Defined-By: systemd
░░ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
░░
░░ A start job for unit ipa-custodia.service has begun execution.
░░
░░ The job identifier is 31813.
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: 2021-12-02 22:59:34 - custodia - Custodia instance


Dez 02 22:59:34 freeipa1.ipa.bepnet.private python3[19572]: detected unhandled Python exception in '/usr/libexec/ipa/ipa-custodia'
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: Traceback (most recent call last):
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: File "/usr/lib/python3.10/site-packages/pkg_resources/init.py", line 2851, in get_entry_map
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: ep_map = self._ep_map
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: File "/usr/lib/python3.10/site-packages/pkg_resources/init.py", line 2813, in getattr
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: raise AttributeError(attr)
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: AttributeError: _ep_map. Did you mean: '_dep_map'?
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: During handling of the above exception, another exception occurred:
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: Traceback (most recent call last):
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: File "/usr/lib/python3.10/site-packages/ipaserver/custodia/server/init.py", line 67, in _create_plugin
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: handler = _load_plugin_class(menu, handler_name)
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: File "/usr/lib/python3.10/site-packages/ipaserver/custodia/server/init.py", line 40, in _load_plugin_class
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: eps = list(pkg_resources.iter_entry_points(group, name))
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: File "/usr/lib/python3.10/site-packages/pkg_resources/init.py", line 641, in
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: for entry in dist.get_entry_map(group).values()
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: File "/usr/lib/python3.10/site-packages/pkg_resources/init.py", line 2853, in get_entry_map
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: ep_map = self._ep_map = EntryPoint.parse_map(
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: File "/usr/lib/python3.10/site-packages/pkg_resources/init.py", line 2538, in parse_map
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: raise ValueError("Entry points must be listed in groups")
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: ValueError: Entry points must be listed in groups
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: During handling of the above exception, another exception occurred:
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: Traceback (most recent call last):
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: File "/usr/lib/python3.10/site-packages/ipaserver/custodia/server/init.py", line 117, in _load_plugins
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: config[menu][name] = _create_plugin(cfgparser, s, menu)
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: File "/usr/lib/python3.10/site-packages/ipaserver/custodia/server/init.py", line 71, in _create_plugin
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: raise ValueError('Invalid format for "handler" option '
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: ValueError: Invalid format for "handler" option [ValueError('Entry points must be listed in groups')]: ipaserver.custodia.httpd.authenticators.SimpleCredsAuth
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: During handling of the above exception, another exception occurred:
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: Traceback (most recent call last):
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: File "/usr/libexec/ipa/ipa-custodia", line 6, in
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: main()
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: File "/usr/lib/python3.10/site-packages/ipaserver/secrets/service.py", line 26, in main
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: return ipaserver.custodia.server.main(argparser)
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: File "/usr/lib/python3.10/site-packages/ipaserver/custodia/server/init.py", line 139, in main
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: _load_plugins(config, cfgparser)
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: File "/usr/lib/python3.10/site-packages/ipaserver/custodia/server/init.py", line 120, in _load_plugins
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: raise RuntimeError(menu, name, e)
Dez 02 22:59:34 freeipa1.ipa.bepnet.private ipa-custodia[19572]: RuntimeError: ('authenticators', 'simple', ValueError('Invalid format for "handler" option [ValueError(\'Entry points must be listed in groups\')]: ipaserver.custodia.httpd.authenticators.SimpleCredsAuth'))
Dez 02 22:59:34 freeipa1.ipa.bepnet.private systemd[1]: ipa-custodia.service: Main process exited, code=exited, status=1/FAILURE
░░ Subject: Unit process exited
░░ Defined-By: systemd
░░ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
░░
░░ An ExecStart= process belonging to unit ipa-custodia.service has exited.
░░
░░ The process' exit code is 'exited' and its exit status is 1.
Dez 02 22:59:34 freeipa1.ipa.bepnet.private systemd[1]: ipa-custodia.service: Failed with result 'exit-code'.
░░ Subject: Unit failed
░░ Defined-By: systemd
░░ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
░░
░░ The unit ipa-custodia.service has entered the 'failed' state with result 'exit-code'.
Dez 02 22:59:34 freeipa1.ipa.bepnet.private systemd[1]: Failed to start IPA Custodia Service.
░░ Subject: A start job for unit ipa-custodia.service has failed
░░ Defined-By: systemd
░░ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
░░
░░ A start job for unit ipa-custodia.service has finished with a failure.
░░
░░ The job identifier is 31813 and the job result is failed.
[root@freeipa1 ipa-data-2021-12-02-22-27-24]#

Expected behavior

proper output of ipa-healthcheck and starting of ipa-custodia

Version/Release/Distribution

$ rpm -q freeipa-server freeipa-client ipa-server ipa-client 389-ds-base pki-ca krb5-server

[root@freeipa1]# rpm -q freeipa-server freeipa-client ipa-server ipa-client 389-ds-base pki-ca krb5-server
freeipa-server-4.9.7-4.fc35.x86_64
freeipa-client-4.9.7-4.fc35.x86_64
389-ds-base-2.0.11-1.fc35.x86_64
krb5-server-1.19.2-2.fc35.x86_64
[root@freeipa1]#


Hi @beppo
Is there anything specific to your environment? For instance are PYTHONPATH or PYTHONHOME set? Did you install some packages using pip rather than the rpms?

Hello frenaud,
Thanks for your reply. I don't think there is anything specific, since I did not alter anything special. I never used use pip on this install. I am not sure if something went wrong in an update from fedora server 32 to 35. I did only use rpm plus dnf.

[root@freeipa1 ~]# python
Python 3.10.0 (default, Oct 4 2021, 00:00:00) [GCC 11.2.1 20210728 (Red Hat 11.2.1-1)] on linux
Type "help", "copyright", "credits" or "license" for more information.

[root@freeipa1 alex]# python -V
Python 3.10.0
[root@freeipa1 alex]#

[root@freeipa1 ~]# python3 -V
Python 3.10.0
[root@freeipa1 ~]

[root@freeipa1 alex]# which python
/usr/bin/python

[root@freeipa1 alex]# ll /usr/bin/python
lrwxrwxrwx. 1 root root 9 5. Okt 00:36 /usr/bin/python -> ./python3

[root@freeipa1 alex]# ll /usr/bin/python3
lrwxrwxrwx. 1 root root 10 5. Okt 00:10 /usr/bin/python3 -> python3.10

[root@freeipa1 alex]# ll /usr/bin/python3.10
-rwxr-xr-x. 1 root root 15944 5. Okt 00:10 /usr/bin/python3.10

[root@freeipa1 ~]# python3 -c "import sys; print('\n'.join(sys.path))"

/usr/lib64/python310.zip
/usr/lib64/python3.10
/usr/lib64/python3.10/lib-dynload
/usr/lib64/python3.10/site-packages
/usr/lib/python3.10/site-packages

Hi @beppo

Could you have a look at this thread https://stackoverflow.com/questions/17985110/errors-while-installing-python-packages ? The error may be linked to a mis-formated entry_points.txt file in one installed egg files.

Hi @frenaud ,
Thanks for your reply. As I cannot code in python I just did a "rm -rf /usr/lib/python3.10/site-packages/*" (except the dnf directories) and reinstalled all packages via "dnf reinstall *". This fixed the problem quite easily plus without having to mess around with egg files manually.

Best regards
beppo

Thanks for the update and I'm glad you managed to fix the issue.

Metadata Update from @frenaud:
- Issue close_status updated to: worksforme
- Issue status updated to: Closed (was: Open)

Metadata