I am unable to run certbot after running brew install certbot
My domain is: equinox.com
I ran this command: brew install certbot certbot -v
It produced this output:
An unexpected error occurred:
pkg_resources.ContextualVersionConflict: (urllib3 2.0.3 (/usr/local/Cellar/certbot/2.6.0_1/libexec/lib/python3.11/site-packages), Requirement.parse('urllib3<1.27,>=1.25.4'), {'botocore'})
Ask for help or search for solutions at https://community.letsencrypt.org. See the logfile /var/folders/gp/b7z3rfpn4v75bs_xkg4xzpj5ysczwg/T/certbot-log-6orjt2ey/log or re-run Certbot with -v for more details.
My web server is (include version):
I am not using certbot to install the certificate on a web server - just to renew a certificate locally.
The operating system my web server runs on is (include version):
macOS Ventura 13.5.2
I can login to a root shell on my machine (yes or no, or I don't know):
yes
The version of my client is (e.g. output of certbot --version or certbot-auto --version if you're using Certbot): certbot brew install output:
The error is from the Python package botocore which is a dependency of the certbot-dns-route53 plugin. Maybe it would suffice to reinstall that plugin (assuming you're using it), otherwise I'm enclined to say you'd need to file this issue at the Homebrew people.
I missed that the certbot-dns-route53 plugin is being managed by Pip while Certbot is managed by Homebrew. Upgrading the plugin worked. Thank you!
Edit: even with upgrading everything, I had to make sure urllib3 is set at 1.26.16. Note this error message:
ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
botocore 1.31.45 requires urllib3<1.27,>=1.25.4, but you have urllib3 2.0.4 which is incompatible.
Because using pip to install packages globally is a recipe for disaster with conflicting dependencies all around..
Ah well, at least you know where to look in the future
That Github issue does mention some good ways to install the plugins into the Certbot venv made by Homebrew though. That would I guess be the "best next thing" compared to installing the plugin globally.
My use case is a one-off. 99% of the time I am using certbot in a container, but ran into this issue locally. Those are all good suggestions though. I appreciate the quick help!