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].
Removed 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.

/!\/!\/!\
Notice that I voluntarily added the doc directory even if no docs
are generated here because zuul will try to pull this requirements from
there first and the contained requirements are needed for reno but AFAIK
the releasenotes dir is ignored by zuul. c.f [4] for further details.
/!\/!\/!\

[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: Ib224dfe036543c8ec7fe3074fe4280586d35de97
This commit is contained in:
Hervé Beraud 2021-01-05 11:23:06 +01:00 committed by Andreas Jaeger
parent 5c9eb70f6f
commit 20ed3307d1
3 changed files with 11 additions and 9 deletions

3
doc/requirements.txt Normal file
View File

@ -0,0 +1,3 @@
sphinx>=2.0 # BSD
openstack-doc-tools>=1.8.0 # Apache-2.0
os-service-types

View File

@ -3,12 +3,7 @@
# process, which may cause wedges in the gate later.
pbr>=2.0.0,!=2.1.0 # Apache-2.0
sphinx>=2.0 # BSD
openstack-doc-tools>=1.8.0 # Apache-2.0
Jinja2>=2.10
requests
os-service-types
lxml!=3.7.0,>=3.4.1 # BSD

12
tox.ini
View File

@ -17,13 +17,17 @@ whitelist_externals =
[testenv:venv]
commands = {posargs}
[testenv:docs]
deps =
-c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
-r{toxinidir}/doc/requirements.txt
commands =
{toxinidir}/tools/build-index.sh
[testenv:publishdocs]
deps = {[testenv:docs]deps}
# Prepare documents (without www) so that they can get published on
# developer.openstack.org with just copying publish-docs/api-ref over.
commands =
# Build website index
{toxinidir}/tools/build-index.sh
[testenv:docs]
commands =
{toxinidir}/tools/build-index.sh