Add doc/requirements

We need to specify doc requirements in doc/requirements.txt
to avoid problems with the pip resolver [1] for the release team [2][3].
Removing specific doc requirements from test-requirements.txt.

The problem here is that this repos haven't doc/requirements.txt file
and by default in this case zuul will use the test-requirements.txt file
to pull requirements [4].

This requirements file contains extra requirements like flake8 that
collided with those allowed in our job environment and so the new pip
resolver fails to install these requirements and the job exits in error.

This project meet the conditions leading to the bug.

[1] http://lists.openstack.org/pipermail/release-job-failures/2021-January/001500.html
[2] http://lists.openstack.org/pipermail/openstack-discuss/2021-January/019611.html
[3] http://lists.openstack.org/pipermail/openstack-discuss/2021-January/019612.html
[4] https://opendev.org/zuul/zuul-jobs/src/branch/master/roles/ensure-sphinx/tasks/main.yaml#L36

Change-Id: Iac7d5ec69724206453c5fc74cbd61efde9b9a1ee
This commit is contained in:
Hervé Beraud 2021-01-07 16:44:41 +01:00
parent 43203ea025
commit 45df91ada8
3 changed files with 7 additions and 4 deletions

3
doc/requirements.txt Normal file
View File

@ -0,0 +1,3 @@
sphinx>=2.0.0,!=2.1.0 # BSD
reno>=3.1.0 # Apache-2.0
openstackdocstheme>=2.2.1 # Apache-2.0

View File

@ -11,8 +11,4 @@ stestr>=1.0.0
testscenarios>=0.4 # Apache-2.0/BSD
testtools>=2.2.0 # MIT
# documentation
doc8>=0.8.1 # Apache-2.0
sphinx>=2.0.0,!=2.1.0 # BSD
reno>=3.1.0 # Apache-2.0
openstackdocstheme>=2.2.1 # Apache-2.0

View File

@ -58,18 +58,22 @@ usedevelop = False
commands = bandit -r monascaclient -n5 -x {env:OS_TEST_PATH}
[testenv:docs]
deps = -c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
-r{toxinidir}/doc/requirements.txt
description = Builds full monascaclient documentation
commands =
{[testenv:devdocs]commands}
{[testenv:releasenotes]commands}
[testenv:devdocs]
deps = {[testenv:docs]deps}
description = Builds developer documentation
commands =
rm -rf {toxinidir}/doc/build {toxinidir}/doc/source/contributor/api
sphinx-build -a -W -b html doc/source doc/build/html
[testenv:releasenotes]
deps = {[testenv:docs]deps}
description = Called from CI script to test and publish the Release Notes
commands =
rm -rf releasenotes/build