Bug 1497314 - dnf install certbot-apache doesn't install the Apache plugin for the Certbot executable
Summary: dnf install certbot-apache doesn't install the Apache plugin for the Certbot ...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: python-certbot-apache
Version: 26
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: James Hogarth
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2017-09-29 18:08 UTC by Brad Warren
Modified: 2017-11-11 02:49 UTC (History)
6 users (show)

Fixed In Version: python-certbot-apache-0.19.0-1.fc26
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2017-10-25 23:08:33 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Brad Warren 2017-09-29 18:08:03 UTC
Description of problem:

After running `dnf install certbot-apache`, the Apache plugin is not available when using the "certbot" executable placed in the user's PATH. When `dnf install certbot-apache` is run, it appears that it installs both a Python 2 and Python 3 version of Certbot but only a Python 2 version of the plugin. The executable "certbot" is a symlink to "certbot-3", where the Apache plugin was not installed, causing this behavior.


Version-Release number of selected component (if applicable): 0.18.1-1.fc26


How reproducible: Always


Steps to Reproduce:

It's probably easiest to use Docker the official Fedora Docker image.

1. docker pull fedora:26
2. docker run --rm -it fedora:26 sh -c 'dnf install certbot-apache -y && certbot plugins'


Actual results:

```
Saving debug log to /var/log/letsencrypt/letsencrypt.log
* standalone
Description: Spin up a temporary webserver
Interfaces: IAuthenticator, IPlugin
Entry point: standalone = certbot.plugins.standalone:Authenticator

* webroot
Description: Place files in webroot directory
Interfaces: IAuthenticator, IPlugin
Entry point: webroot = certbot.plugins.webroot:Authenticator
```

The Apache plugin is not listed.


Expected results:

``` 
...
Saving debug log to /var/log/letsencrypt/letsencrypt.log
* apache
Description: Apache Web Server plugin - Beta
Interfaces: IAuthenticator, IInstaller, IPlugin
Entry point: apache = certbot_apache.configurator:ApacheConfigurator

* standalone
Description: Spin up a temporary webserver
Interfaces: IAuthenticator, IPlugin
Entry point: standalone = certbot.plugins.standalone:Authenticator

* webroot
Description: Place files in webroot directory
Interfaces: IAuthenticator, IPlugin
Entry point: webroot = certbot.plugins.webroot:Authenticator
```

The Apache plugin is listed.


Additional info:

I'm not sure what other versions of Fedora are affected. This bug was reported to me at https://github.com/certbot/certbot/issues/5132.

Comment 1 Eli Young 2017-10-02 21:37:53 UTC
This is a result of certbot-apache being provided by both python2-certbot-apache
and python3-certbot-apache with the same version number. When you tell dnf to
install certbot-apache, it doesn't try to figure out which of the packages that
satisfy the providespec would result in the fewest changes to the system; it
just tries to find the highest version of the providespec that is available.  As
such, it gets to choose between python2-certbot-apache and
python3-certbot-apache with both offering the same version; in this scenario it
appears to fall back to lexical order, ultimately selecting the python2 package.

There are a number of ways to resolve this, but probably the simplest is, for
Fedora 26+, to only have python3-certbot-apache provide certbot-apache.

Comment 2 Fedora Update System 2017-10-06 23:54:49 UTC
python-certbot-nginx-0.19.0-1.fc26 python-certbot-apache-0.19.0-1.fc26 certbot-0.19.0-1.fc26 python-acme-0.19.0-1.fc26 has been submitted as an update to Fedora 26. https://bodhi.fedoraproject.org/updates/FEDORA-2017-821411cf91

Comment 3 Fedora Update System 2017-10-08 04:23:58 UTC
certbot-0.19.0-1.fc26, python-acme-0.19.0-1.fc26, python-certbot-apache-0.19.0-1.fc26, python-certbot-nginx-0.19.0-1.fc26 has been pushed to the Fedora 26 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-821411cf91

Comment 4 Fedora Update System 2017-10-08 06:24:36 UTC
certbot-0.19.0-1.fc27, python-acme-0.19.0-1.fc27, python-certbot-apache-0.19.0-1.fc27, python-certbot-nginx-0.19.0-1.fc27 has been pushed to the Fedora 27 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-8d25f2fe07

Comment 5 Fedora Update System 2017-10-25 23:08:33 UTC
certbot-0.19.0-1.fc26, python-acme-0.19.0-1.fc26, python-certbot-apache-0.19.0-1.fc26, python-certbot-nginx-0.19.0-1.fc26 has been pushed to the Fedora 26 stable repository. If problems still persist, please make note of it in this bug report.

Comment 6 Fedora Update System 2017-11-11 02:49:21 UTC
certbot-0.19.0-1.fc27, python-acme-0.19.0-1.fc27, python-certbot-apache-0.19.0-1.fc27, python-certbot-nginx-0.19.0-1.fc27 has been pushed to the Fedora 27 stable repository. If problems still persist, please make note of it in this bug report.


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