Sphinx plugin to generate Coverity defects report or table in reStructuredText documentation. Coverity report is then personally styled while data integrity is guaranteed.
Build of my project fails when i don't provide a password. The suds throws an exception which is not caught by the plugin. Just using the plugin in conf.py is enough to trigger this error.
$ cat /tmp/sphinx-err-478__la2.log
# Sphinx version: 1.8.1
# Python version: 3.6.6+ (CPython)
# Docutils version: 0.14
# Jinja2 version: 2.10
# Last messages:
# done
#
# preparing documents...
#
# done
#
# writing output... [ 1%] build-infra
#
# Login to Coverity server...
#
# Loaded extensions:
# sphinx.ext.mathjax (1.8.1) from /usr/local/lib/python3.6/dist-packages/sphinx/ext/mathjax.py
# alabaster (0.7.11) from /usr/local/lib/python3.6/dist-packages/alabaster/__init__.py
# sphinx.ext.autodoc (1.8.1) from /usr/local/lib/python3.6/dist-packages/sphinx/ext/autodoc/__init__.py
# sphinx.ext.doctest (1.8.1) from /usr/local/lib/python3.6/dist-packages/sphinx/ext/doctest.py
# sphinx.ext.intersphinx (1.8.1) from /usr/local/lib/python3.6/dist-packages/sphinx/ext/intersphinx.py
# sphinx.ext.todo (1.8.1) from /usr/local/lib/python3.6/dist-packages/sphinx/ext/todo.py
# sphinx.ext.coverage (1.8.1) from /usr/local/lib/python3.6/dist-packages/sphinx/ext/coverage.py
# sphinx.ext.ifconfig (1.8.1) from /usr/local/lib/python3.6/dist-packages/sphinx/ext/ifconfig.py
# mlx.coverity (%(prog)s 0.0.8) from /usr/local/lib/python3.6/dist-packages/mlx/coverity.py
# sphinx.ext.viewcode (1.8.1) from /usr/local/lib/python3.6/dist-packages/sphinx/ext/viewcode.py
# sphinx.ext.graphviz (1.8.1) from /usr/local/lib/python3.6/dist-packages/sphinx/ext/graphviz.py
# sphinxcontrib.plantuml (unknown version) from /usr/local/lib/python3.6/dist-packages/sphinxcontrib/plantuml.py
# sphinxcontrib.blockdiag (1.5.4) from /usr/local/lib/python3.6/dist-packages/sphinxcontrib/blockdiag.py
# sphinxcontrib.packetdiag (1.0.4) from /usr/local/lib/python3.6/dist-packages/sphinxcontrib/packetdiag.py
# sphinxcontrib.doxylink (unknown version) from /usr/local/lib/python3.6/dist-packages/sphinxcontrib/doxylink/__init__.py
# mlx.traceability (unknown version) from /usr/local/lib/python3.6/dist-packages/mlx/traceability.py
# sphinxcontrib.wavedrom (unknown version) from /usr/local/lib/python3.6/dist-packages/sphinxcontrib/wavedrom.py
# sphinx_selective_exclude.eager_only (unknown version) from /usr/local/lib/python3.6/dist-packages/sphinx_selective_exclude/eager_only.py
# sphinx_selective_exclude.modindex_exclude (unknown version) from /usr/local/lib/python3.6/dist-packages/sphinx_selective_exclude/modindex_exclude.py
# sphinx_selective_exclude.search_auto_exclude (unknown version) from /usr/local/lib/python3.6/dist-packages/sphinx_selective_exclude/search_auto_exclude.py
# breathe (4.10.0) from /usr/local/lib/python3.6/dist-packages/breathe/__init__.py
Traceback (most recent call last):
File "/usr/local/lib/python3.6/dist-packages/suds/transport/http.py", line 78, in send
fp = self.u2open(u2request)
File "/usr/local/lib/python3.6/dist-packages/suds/transport/http.py", line 119, in u2open
return url.open(u2request, timeout=tm)
File "/usr/lib/python3.6/urllib/request.py", line 532, in open
response = meth(req, response)
File "/usr/lib/python3.6/urllib/request.py", line 642, in http_response
'http', request, response, code, msg, hdrs)
File "/usr/lib/python3.6/urllib/request.py", line 570, in error
return self._call_chain(*args)
File "/usr/lib/python3.6/urllib/request.py", line 504, in _call_chain
result = func(*args)
File "/usr/lib/python3.6/urllib/request.py", line 650, in http_error_default
raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 401: Unauthorized
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/lib/python3.6/dist-packages/suds/client.py", line 652, in send
reply = transport.send(request)
File "/usr/local/lib/python3.6/dist-packages/suds/transport/http.py", line 178, in send
return HttpTransport.send(self, request)
File "/usr/local/lib/python3.6/dist-packages/suds/transport/http.py", line 86, in send
raise TransportError(e.msg, e.code, e.fp)
suds.transport.TransportError: Unauthorized
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/lib/python3.6/dist-packages/sphinx/cmd/build.py", line 304, in build_main
app.build(args.force_all, filenames)
File "/usr/local/lib/python3.6/dist-packages/sphinx/application.py", line 341, in build
self.builder.build_update()
File "/usr/local/lib/python3.6/dist-packages/sphinx/builders/__init__.py", line 347, in build_update
len(to_build))
File "/usr/local/lib/python3.6/dist-packages/sphinx/builders/__init__.py", line 412, in build
self.write(docnames, list(updated_docnames), method)
File "/usr/local/lib/python3.6/dist-packages/sphinx/builders/__init__.py", line 593, in write
self._write_serial(sorted(docnames))
File "/usr/local/lib/python3.6/dist-packages/sphinx/builders/__init__.py", line 601, in _write_serial
doctree = self.env.get_and_resolve_doctree(docname, self)
File "/usr/local/lib/python3.6/dist-packages/sphinx/environment/__init__.py", line 627, in get_and_resolve_doctree
self.apply_post_transforms(doctree, docname)
File "/usr/local/lib/python3.6/dist-packages/sphinx/environment/__init__.py", line 679, in apply_post_transforms
self.app.emit('doctree-resolved', doctree, docname)
File "/usr/local/lib/python3.6/dist-packages/sphinx/application.py", line 510, in emit
return self.events.emit(event, self, *args)
File "/usr/local/lib/python3.6/dist-packages/sphinx/events.py", line 80, in emit
results.append(callback(*args))
File "/usr/local/lib/python3.6/dist-packages/mlx/coverity.py", line 156, in process_coverity_nodes
app.config.coverity_credentials['password'])
File "/usr/local/lib/python3.6/dist-packages/mlx/coverity_services.py", line 163, in login
version = self.get_version()
File "/usr/local/lib/python3.6/dist-packages/mlx/coverity_services.py", line 174, in get_version
return self.client.service.getVersion()
File "/usr/local/lib/python3.6/dist-packages/suds/client.py", line 559, in __call__
return client.invoke(args, kwargs)
File "/usr/local/lib/python3.6/dist-packages/suds/client.py", line 618, in invoke
result = self.send(soapenv)
File "/usr/local/lib/python3.6/dist-packages/suds/client.py", line 664, in send
result = self.failed(binding, e)
File "/usr/local/lib/python3.6/dist-packages/suds/client.py", line 726, in failed
raise Exception((status, reason))
Exception: (401, 'Unauthorized')
Build of my project fails when i don't provide a password. The suds throws an exception which is not caught by the plugin. Just using the plugin in
conf.py
is enough to trigger this error.And the log file: