From a26f54421ae61b1a42c2ff69d3037c428aa238f4 Mon Sep 17 00:00:00 2001 From: Paul Vinciguerra Date: Wed, 11 Mar 2020 13:28:27 -0400 Subject: [PATCH] docs: Fix venv under python3 See ticket for output under containers for each distro. Ticket: VPP-1851 Type: docs Change-Id: I0d80dabeb30d92d09edffa503b05d5eef08313dc Signed-off-by: Paul Vinciguerra --- docs/Makefile | 13 ++++++------- docs/conf.py | 6 ++---- docs/etc/requirements.txt | 2 ++ docs/scripts/sphinx-make.sh | 28 +++++++++++++++++++++------- docs/whatisvpp/performance.rst | 2 +- 5 files changed, 32 insertions(+), 19 deletions(-) diff --git a/docs/Makefile b/docs/Makefile index 4e8f1634b21..6c5960d18c4 100644 --- a/docs/Makefile +++ b/docs/Makefile @@ -8,9 +8,8 @@ endif # Work out the OS if we haven't already OS_ID ?= $(shell grep '^ID=' /etc/os-release | cut -f2- -d= | sed -e 's/\"//g') -DOC_DEB_DEPENDS = enchant libenchant-dev -DOC_RPM_DEPENDS = enchant libenchant-dev - +DOC_DEB_DEPENDS = enchant +DOC_RPM_DEPENDS = enchant # You can set these variables from the command line. SPHINXOPTS = @@ -28,6 +27,9 @@ help: # Catch-all target: route all unknown targets to Sphinx using the new # "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS). %: Makefile + @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) + +spell: @echo "Checking whether dependencies for Docs are installed..." ifeq ($(OS_ID),ubuntu) @set -e; inst=; \ @@ -41,7 +43,4 @@ ifeq ($(OS_ID),ubuntu) else ifneq ("$(wildcard /etc/redhat-release)","") @sudo yum install $(CONFIRM) $(DOC_RPM_DEPENDS) endif -# Disable spell checking for now -# @python3 -m pip install sphinxcontrib-spelling -# @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" -W -b spelling $(O) - @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) + @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" -W -b spelling $(O) diff --git a/docs/conf.py b/docs/conf.py index 771a4d0883e..da8c223f27a 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -40,10 +40,8 @@ release = u'20.01' extensions = [ 'sphinx.ext.autodoc', 'sphinx.ext.viewcode', - 'recommonmark'] - -# This is currently breaking the build -#### 'sphinxcontrib.spelling'] + 'recommonmark', + 'sphinxcontrib.spelling'] spelling_word_list_filename = 'spelling_wordlist.txt' # Add any paths that contain templates here, relative to this directory. diff --git a/docs/etc/requirements.txt b/docs/etc/requirements.txt index bbbe2c25698..2df8080ef58 100644 --- a/docs/etc/requirements.txt +++ b/docs/etc/requirements.txt @@ -13,6 +13,7 @@ jsonschema==3.2.0 MarkupSafe==1.1.1 packaging==20.3 pyaml==20.3.1 +pyenchant==3.0.1 Pygments==2.6.1 pyparsing==2.4.6 pyrsistent==0.15.7 @@ -30,5 +31,6 @@ sphinxcontrib-htmlhelp==1.0.3 sphinxcontrib-jsmath==1.0.1 sphinxcontrib-qthelp==1.0.3 sphinxcontrib-serializinghtml==1.1.4 +sphinxcontrib-spelling==4.3.0 urllib3==1.25.8 zipp==3.1.0 diff --git a/docs/scripts/sphinx-make.sh b/docs/scripts/sphinx-make.sh index 36596f219f5..61356bb1b8f 100755 --- a/docs/scripts/sphinx-make.sh +++ b/docs/scripts/sphinx-make.sh @@ -1,20 +1,34 @@ -#!/bin/bash +#!/bin/bash -ex + +# Not refactored to root Makefile because CI calls this from +# makefile in /docs (as if 'make -C docs'). +if [ -z "$PYTHON" ] +then +PYTHON_INTERP=python3 +else +PYTHON_INTERP=$(PYTHON) +fi + +# Get the OS +OS_ID=$(grep '^ID=' /etc/os-release | cut -f2- -d= | sed -e 's/\"//g') if [ "$1" == "venv" ] then - OS_ID=$(grep '^ID=' /etc/os-release | cut -f2- -d= | sed -e 's/\"//g') + # We need to install the venv package on new systems if [ "$OS_ID" == "ubuntu" ] then - sudo apt-get install -y python3-pip + sudo apt-get install $CONFIRM python3-venv fi if [ "$OS_ID" == "centos" ] then - sudo yum install -y python3-pip + sudo yum install $CONFIRM python3-venv fi - pip3 install --user virtualenv - python3 -m virtualenv $VENV_DIR + + # Install the virtual environment + $PYTHON_INTERP -m venv $VENV_DIR source $VENV_DIR/bin/activate; - pip3 install -r $DOCS_DIR/etc/requirements.txt + $PYTHON_INTERP -m pip install wheel==0.34.2 + $PYTHON_INTERP -m pip install -r $DOCS_DIR/etc/requirements.txt else source $VENV_DIR/bin/activate; VERSION=`source $WS_ROOT/src/scripts/version` diff --git a/docs/whatisvpp/performance.rst b/docs/whatisvpp/performance.rst index 9b0fb21bb71..d7af24a3909 100644 --- a/docs/whatisvpp/performance.rst +++ b/docs/whatisvpp/performance.rst @@ -32,7 +32,7 @@ Continuous System Integration and Testing (CSIT) ------------------------------------------------ The Continuous System Integration and Testing (CSIT) project provides functional and performance -testing for FD.io VPP. This testing is focused on functional and performance regresssions. The results +testing for FD.io VPP. This testing is focused on functional and performance regressions. The results are posted to `CSIT Test Report `_. For more about CSIT checkout the following links: -- 2.16.6