Infomaniak / certbot-dns-infomaniak

Infomaniak DNS Authenticator plugin for certbot
Apache License 2.0
34 stars 13 forks source link

Error: No module named 'zope' #34

Closed lordhelmet77 closed 7 months ago

lordhelmet77 commented 7 months ago

I use Nginx Proxy Manager on Docker, latest release 2.11.1

When trying to generate a new certificate, I get an error with the following log entry:

CommandError: The 'certbot_dns_infomaniak.dns_infomaniak' plugin errored while loading: No module named 'zope'. You may need to remove or update this plugin. The Certbot log will contain the full error details and this should be reported to the plugin developer.
Ask for help or search for solutions at https://community.letsencrypt.org. See the logfile /tmp/certbot-log-psvyhsmb/log or re-run Certbot with -v for more details.

    at /app/lib/utils.js:16:13
    at ChildProcess.exithandler (node:child_process:430:5)
    at ChildProcess.emit (node:events:518:28)
    at maybeClose (node:internal/child_process:1105:16)
    at ChildProcess._handle.onexit (node:internal/child_process:305:5)

I tried removing and reinstalling certbot-dns-infomaniak with no luck

lordhelmet77 commented 7 months ago

I forgot to post the certbot-log … here we go:

2024-04-16 19:19:10,636:DEBUG:certbot._internal.log:Exiting abnormally:
Traceback (most recent call last):
  File "/opt/certbot/lib/python3.11/site-packages/certbot/_internal/plugins/disco.py", line 191, in find_all
    cls._load_entry_point(entry_point, plugins)
  File "/opt/certbot/lib/python3.11/site-packages/certbot/_internal/plugins/disco.py", line 203, in _load_entry_point
    plugin_ep = PluginEntryPoint(entry_point)
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/certbot/lib/python3.11/site-packages/certbot/_internal/plugins/disco.py", line 42, in __init__
    self.plugin_cls: Type[interfaces.Plugin] = entry_point.load()
                                               ^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/importlib/metadata/__init__.py", line 202, in load
    module = import_module(match.group('module'))
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1206, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1178, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1149, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 940, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/opt/certbot/lib/python3.11/site-packages/certbot_dns_infomaniak/dns_infomaniak.py", line 7, in <module>
    import zope.interface
ModuleNotFoundError: No module named 'zope'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/opt/certbot/bin/certbot", line 8, in <module>
    sys.exit(main())
             ^^^^^^
  File "/opt/certbot/lib/python3.11/site-packages/certbot/main.py", line 19, in main
    return internal_main.main(cli_args)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/certbot/lib/python3.11/site-packages/certbot/_internal/main.py", line 1866, in main
    plugins = plugins_disco.PluginsRegistry.find_all()
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/certbot/lib/python3.11/site-packages/certbot/_internal/plugins/disco.py", line 193, in find_all
    raise errors.PluginError(
certbot.errors.PluginError: The 'certbot_dns_infomaniak.dns_infomaniak' plugin errored while loading: No module named 'zope'. You may need to remove or update this plugin. The Certbot log will contain the full error details and this should be reported to the plugin developer.
2024-04-16 19:19:10,636:ERROR:certbot._internal.log:The 'certbot_dns_infomaniak.dns_infomaniak' plugin errored while loading: No module named 'zope'. You may need to remove or update this plugin. The Certbot log will contain the full error details and this should be reported to the plugin developer.
RemyDG0 commented 7 months ago

I have the same issue.

Here are some details :

I use the dns certbot of infomaniak in nginx-proxy-manager Version : 2.11.1 On TrueNas Scale (version 23.10) as an application package (docker) (package version 1.0.29)

CommandError: The 'certbot_dns_infomaniak.dns_infomaniak' plugin errored while loading: No module named 'zope'. You may need to remove or update this plugin. The Certbot log will contain the full error details and this should be reported to the plugin developer.
Ask for help or search for solutions at https://community.letsencrypt.org. See the logfile /tmp/certbot-log-oswwmbum/log or re-run Certbot with -v for more details.

    at /app/lib/utils.js:16:13
    at ChildProcess.exithandler (node:child_process:430:5)
    at ChildProcess.emit (node:events:518:28)
    at maybeClose (node:internal/child_process:1105:16)
    at ChildProcess._handle.onexit (node:internal/child_process:305:5)
abeggled commented 7 months ago

Same Problem here:

CommandError: The 'certbot_dns_infomaniak.dns_infomaniak' plugin errored while loading: No module named 'zope'. You may need to remove or update this plugin. The Certbot log will contain the full error details and this should be reported to the plugin developer.

Ask for help or search for solutions at https://community.letsencrypt.org. See the logfile /tmp/certbot-log-hsn0jizm/log or re-run Certbot with -v for more details.

    at /app/lib/utils.js:16:13
    at ChildProcess.exithandler (node:child_process:430:5)
    at ChildProcess.emit (node:events:518:28)
    at maybeClose (node:internal/child_process:1105:16)
    at ChildProcess._handle.onexit (node:internal/child_process:305:5)
reneluria commented 7 months ago

This has been resolved in version 0.2.0 two years ago

https://github.com/Infomaniak/certbot-dns-infomaniak/commit/36fa777c02def1c88b2e77ba8eadc0f8c38889ab

abeggled commented 7 months ago

Excuse me, but it's not fixed. Tested this moment with fresh NPM (v2.11.1) install. It can be fixed by running "pip install zope" inside NPM Shell.

reneluria commented 7 months ago

Excuse me, but it's not fixed. Tested this moment with fresh NPM (v2.11.1) install. It can be fixed by running "pip install zope" inside NPM Shell.

I understand your concern, but this issue is not within the plugin itself. The fact that the software you use installs an outdated version of the plugin is something I cannot fix.

0.2.1 has been released on Dec 5, 2022

abeggled commented 7 months ago

Thanks for the explanation. I will provide a PR in the Nginx Proxy Manager project.

lordhelmet77 commented 7 months ago

Update: the PR is live in the latest 2.11.2 release.

========================

Thanks for the explanation. I will provide a PR in the Nginx Proxy Manager project.

There's a PR already by @Fuechslein and committed by @JC21 two weeks ago.

Solves the issue! You can run build jc21/nginx-proxy-manager:github-pr-3691