ci: add missing dependencies for documentation

Message ID 1565702536-9596-1-git-send-email-david.marchand@redhat.com
State New
Delegated to: Thomas Monjalon
Headers show
Series
  • ci: add missing dependencies for documentation
Related show

Checks

Context Check Description
ci/mellanox-Performance-Testing success Performance Testing PASS
ci/intel-Performance-Testing success Performance Testing PASS
ci/iol-Compile-Testing success Compile Testing PASS
ci/Intel-compilation success Compilation OK
ci/checkpatch success coding style OK

Commit Message

David Marchand Aug. 13, 2019, 1:22 p.m.
Install missing dependencies so that doc can be generated.
While at it, explicitly configure that we want the doc to be generated.
Missing dependencies are then reported as an error rather than silently
ignored.

Because of these extra dependencies, only build them in dedicated travis
jobs.

Fixes: ad2b2cfb1ea3 ("ci: enable unit tests with Travis")

Signed-off-by: David Marchand <david.marchand@redhat.com>
---
 .ci/linux-build.sh | 8 ++++----
 .travis.yml        | 7 ++++++-
 2 files changed, 10 insertions(+), 5 deletions(-)

Comments

Aaron Conole Aug. 13, 2019, 2:41 p.m. | #1
David Marchand <david.marchand@redhat.com> writes:

> Install missing dependencies so that doc can be generated.
> While at it, explicitly configure that we want the doc to be generated.
> Missing dependencies are then reported as an error rather than silently
> ignored.
>
> Because of these extra dependencies, only build them in dedicated travis
> jobs.
>
> Fixes: ad2b2cfb1ea3 ("ci: enable unit tests with Travis")
>
> Signed-off-by: David Marchand <david.marchand@redhat.com>
> ---

Makes sense.  I didn't see any problems with the doc build - was there
an indication that the dependencies were missing?

Either way:

Acked-by: Aaron Conole <aconole@redhat.com>
David Marchand Aug. 13, 2019, 2:48 p.m. | #2
On Tue, Aug 13, 2019 at 4:41 PM Aaron Conole <aconole@redhat.com> wrote:
>
> David Marchand <david.marchand@redhat.com> writes:
>
> > Install missing dependencies so that doc can be generated.
> > While at it, explicitly configure that we want the doc to be generated.
> > Missing dependencies are then reported as an error rather than silently
> > ignored.
> >
> > Because of these extra dependencies, only build them in dedicated travis
> > jobs.
> >
> > Fixes: ad2b2cfb1ea3 ("ci: enable unit tests with Travis")
> >
> > Signed-off-by: David Marchand <david.marchand@redhat.com>
> > ---
>
> Makes sense.  I didn't see any problems with the doc build - was there
> an indication that the dependencies were missing?

Only a log saying nothing would be built:
https://travis-ci.com/DPDK/dpdk/jobs/224804083#L628

Patch

diff --git a/.ci/linux-build.sh b/.ci/linux-build.sh
index d5ad919..6075c44 100755
--- a/.ci/linux-build.sh
+++ b/.ci/linux-build.sh
@@ -19,14 +19,14 @@  if [ "$AARCH64" = "1" ]; then
     OPTS="$OPTS --cross-file config/arm/arm64_armv8_linux_gcc"
 fi
 
+if [ "$BUILD_DOCS" = "1" ]; then
+    OPTS="$OPTS -Denable_docs=true"
+fi
+
 OPTS="$OPTS --default-library=$DEF_LIB"
 meson build --werror -Dexamples=all $OPTS
 ninja -C build
 
-if [ "$BUILD_DOCS" = "1" ]; then
-    ninja -C build doc
-fi
-
 if [ "$RUN_TESTS" = "1" ]; then
     sudo meson test -C build --suite fast-tests -t 3
 fi
diff --git a/.travis.yml b/.travis.yml
index 781f9f6..3d6ef29 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -23,6 +23,9 @@  extra_packages: &extra_packages
   - *required_packages
   - [libbsd-dev, libpcap-dev, libcrypto++-dev, libjansson4]
 
+doc_packages: &doc_packages
+  - [doxygen, graphviz, python3-sphinx]
+
 before_install: ./.ci/${TRAVIS_OS_NAME}-setup.sh
 
 env:
@@ -30,7 +33,7 @@  env:
   - DEF_LIB="shared"
   - DEF_LIB="static" OPTS="-Denable_kmods=false"
   - DEF_LIB="shared" OPTS="-Denable_kmods=false"
-  - DEF_LIB="shared" RUN_TESTS=1 BUILD_DOCS=1
+  - DEF_LIB="shared" RUN_TESTS=1
 
 matrix:
   include:
@@ -58,6 +61,7 @@  matrix:
       apt:
         packages:
           - *extra_packages
+          - *doc_packages
   - env: DEF_LIB="static" OPTS="-Denable_kmods=false" EXTRA_PACKAGES=1
     compiler: gcc
     addons:
@@ -88,6 +92,7 @@  matrix:
       apt:
         packages:
           - *extra_packages
+          - *doc_packages
   - env: DEF_LIB="static" OPTS="-Denable_kmods=false" EXTRA_PACKAGES=1
     compiler: clang
     addons: