Bug 1689951 - certbot EPEL package has missing dependencies on CentOS 7.6
Summary: certbot EPEL package has missing dependencies on CentOS 7.6
Keywords:
Status: CLOSED WORKSFORME
Alias: None
Product: Fedora EPEL
Classification: Fedora
Component: certbot
Version: epel7
Hardware: noarch
OS: Linux
unspecified
urgent
Target Milestone: ---
Assignee: Eli Young
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2019-03-18 14:00 UTC by Justin W. Flory (Fedora)
Modified: 2019-07-20 02:25 UTC (History)
7 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2019-07-20 02:25:50 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Justin W. Flory (Fedora) 2019-03-18 14:00:35 UTC
Description of problem:

The certbot package has missing dependencies and yields a stacktrace every time a command is run. I am unable to renew existing certificates as a consequence. Two issues of note:

1. openssl-devel package needed but not installed as dependency
2. urllib3 is missing


Version-Release number of selected component (if applicable): 0.31.0-2.el7


How reproducible:

Every time.


Steps to Reproduce:
1. certbot -h
2. ImportError: No module named 'requests.packages.urllib3'


Actual results:

$ sudo certbot renew
Traceback (most recent call last):
  File "/bin/certbot", line 9, in <module>
    load_entry_point('certbot==0.31.0', 'console_scripts', 'certbot')()
  File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 378, in load_entry_point
    return get_distribution(dist).load_entry_point(group, name)
  File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 2566, in load_entry_point
    return ep.load()
  File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 2260, in load
    entry = __import__(self.module_name, globals(),globals(), ['__name__'])
  File "/usr/lib/python2.7/site-packages/certbot/main.py", line 18, in <module>
    from certbot import account
  File "/usr/lib/python2.7/site-packages/certbot/account.py", line 18, in <module>
    from acme import messages
  File "/usr/lib/python2.7/site-packages/acme/messages.py", line 11, in <module>
    from acme import challenges
  File "/usr/lib/python2.7/site-packages/acme/challenges.py", line 12, in <module>
    import requests
  File "/usr/lib/python2.7/site-packages/requests/__init__.py", line 58, in <module>
    from . import utils
  File "/usr/lib/python2.7/site-packages/requests/utils.py", line 32, in <module>
    from .exceptions import InvalidURL
  File "/usr/lib/python2.7/site-packages/requests/exceptions.py", line 10, in <module>
    from .packages.urllib3.exceptions import HTTPError as BaseHTTPError
  File "/usr/lib/python2.7/site-packages/requests/packages/__init__.py", line 95, in load_module
    raise ImportError("No module named '%s'" % (name,))
ImportError: No module named 'requests.packages.urllib3'


Expected results:

$ sudo certbot renew
# Certificates successfully renew.


Additional info:

I don't have the stacktrace for the openssl-devel error, but once I installed the package, the issue I had went away.

I also installed the python-urllib3-1.10.2-5.el7 package with no success.

Comment 1 Eli Young 2019-07-19 19:49:33 UTC
Which versions of the following packages are installed on your system?

python2-acme
python2-cryptography
python2-josepy
pyOpenSSL
python-requests
python2-requests

Comment 2 Justin W. Flory (Fedora) 2019-07-20 02:25:50 UTC
Hi Eli, I no longer experience the dependency issue originally described in this bug. It must have been resolved in a recent update to certbot or another dependent package. I am closing this bug since I can no longer replicate it.

To answer your question, here are the packages I am currently running:

$ for pkg in python2-acme python2-cryptography python2-josepy pyOpenSSL python-requests python2-requests; do yum list installed | grep $pkg; done
python2-acme.noarch                 0.35.1-1.el7                       @epel    
python2-cryptography.x86_64         1.7.2-2.el7                        @base    
python2-josepy.noarch               1.2.0-1.el7                        @epel    
pyOpenSSL.x86_64                    0.13.1-4.el7                       @base    
python-requests.noarch              2.6.0-1.el7_1                      @base    
python-requests-toolbelt.noarch     0.8.0-1.el7                        @epel    
python2-requests.noarch             2.6.0-0.el7                        @epel


Note You need to log in before you can comment on or make changes to this bug.