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: I582c7b1b8008e72f376a24a58ca1ee5ac4d933bb
This commit is contained in:
Hervé Beraud 2021-01-07 13:18:06 +01:00
parent ceac157b62
commit 9cb4a752c0
3 changed files with 11 additions and 5 deletions

5
doc/requirements.txt Normal file
View File

@ -0,0 +1,5 @@
# documentation
sphinx>=2.0.0,!=2.1.0 # BSD
os-api-ref>=1.4.0 # Apache-2.0
reno>=3.1.0 # Apache-2.0
openstackdocstheme>=2.2.1 # Apache-2.0

View File

@ -22,9 +22,4 @@ testscenarios>=0.4 # Apache-2.0/BSD
testtools>=2.2.0 # MIT
tempest>=17.1.0 # Apache-2.0
# documentation
doc8>=0.6.0 # Apache-2.0
sphinx>=2.0.0,!=2.1.0 # BSD
os-api-ref>=1.4.0 # Apache-2.0
reno>=3.1.0 # Apache-2.0
openstackdocstheme>=2.2.1 # Apache-2.0

View File

@ -65,6 +65,8 @@ commands =
{[testenv:checkniceness]commands}
[testenv:docs]
deps = -c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
-r{toxinidir}/doc/requirements.txt
description = Builds api-ref, api-guide, releasenotes and devdocs
commands =
{[testenv:devdocs]commands}
@ -72,6 +74,7 @@ commands =
{[testenv:releasenotes]commands}
[testenv:pdf-docs]
deps = {[testenv:docs]deps}
envdir = {toxworkdir}/docs
whitelist_externals =
make
@ -82,6 +85,7 @@ commands =
make -C doc/build/pdf
[testenv:api-ref]
deps = {[testenv:docs]deps}
description = Called from CI scripts to test and publish the API Ref
commands =
rm -rf api-ref/build
@ -90,6 +94,7 @@ commands =
api-ref/source api-ref/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
@ -97,6 +102,7 @@ commands =
releasenotes/source releasenotes/build/html
[testenv:devdocs]
deps = {[testenv:docs]deps}
description = Builds developer documentation
commands =
rm -rf doc/build doc/source/contributor/api