Bug 1410127

Summary: mkdocs serve fails because of missing livereload module
Product: [Fedora] Fedora EPEL Reporter: Eric Lavarde <elavarde>
Component: mkdocsAssignee: William Moreno <williamjmorenor>
Status: NEW --- QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: epel7CC: carl, williamjmorenor
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1411586    
Bug Blocks:    

Description Eric Lavarde 2017-01-04 14:24:56 UTC
Description of problem:
mkdocs serve fails with an error about a missing livereload module. AFAICS LiveReload hasn't even been packaged for EPEL/RHEL (it's packaged for Fedora though).

Version-Release number of selected component (if applicable):
mkdocs-0.14.0-10.el7.noarch
Red Hat Enterprise Linux Workstation release 7.3 (Maipo)
python-2.7.5-48.el7.x86_64

How reproducible:
Always

Steps to Reproduce:
1. mkdocs init someproject
2. cd someproject
3. mkdocs serve

Actual results:
[...]
Traceback (most recent call last):
  File "/usr/bin/mkdocs", line 9, in <module>
    load_entry_point('mkdocs==0.14.0', 'console_scripts', 'mkdocs')()
  File "/usr/lib/python2.7/site-packages/click/core.py", line 716, in __call__
    return self.main(*args, **kwargs)
  File "/usr/lib/python2.7/site-packages/click/core.py", line 696, in main
    rv = self.invoke(ctx)
  File "/usr/lib/python2.7/site-packages/click/core.py", line 1060, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/usr/lib/python2.7/site-packages/click/core.py", line 889, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/lib/python2.7/site-packages/click/core.py", line 534, in invoke
    return callback(*args, **kwargs)
  File "/usr/lib/python2.7/site-packages/mkdocs/cli.py", line 111, in serve_command
    livereload=livereload,
  File "/usr/lib/python2.7/site-packages/mkdocs/serve.py", line 84, in serve
    _livereload(host, port, config, builder, tempdir)
  File "/usr/lib/python2.7/site-packages/mkdocs/serve.py", line 16, in _livereload
    from livereload import Server
ImportError: No module named livereload


Expected results:

It works... livereload is packaged and a dependency of mkdocs.

Additional info:

mkdocs build works fine

Looking at `rpm -qi mkdocs`, it states "MkDocs is Python powered, this package is built with Python 3." but `/usr/bin/mkdocs` has a shebang on python2...

Comment 1 William Moreno 2017-01-10 02:41:46 UTC
I need live certifi to have live reload in epel7, for the moment the server options will not work in epel7.

Comment 2 Eric Lavarde 2017-01-10 08:21:52 UTC
It would perhaps be nice to have it documented in the package itself? As some kind of README.EPEL (equivalent to README.Debian).