From d5c62b2bf602374febf5f4cc8c3d47a23f80ab27 Mon Sep 17 00:00:00 2001 From: gcontini <1121667+gcontini@users.noreply.github.com> Date: 周日, 22 3月 2020 11:51:31 +0800 Subject: [PATCH] improve documentation --- .travis.yml | 80 +++++++++++++++++++++++++++++++++++----- 1 files changed, 70 insertions(+), 10 deletions(-) diff --git a/.travis.yml b/.travis.yml index 5e787b5..e432aa0 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,11 +1,18 @@ language: cpp services: docker -matrix: +stages: + - name: test + - name: documentation + if: branch = develop + +jobs: include: - os: linux dist: bionic name: "Ubuntu 18.04 - Travis CI VM" + env: + - VIRTUAL_ENV=VM addons: apt: packages: @@ -46,6 +53,8 @@ - os: linux dist: bionic name: "Ubuntu 18.04 - Travis CI VM - Debug build" + env: + - VIRTUAL_ENV=VM addons: apt: packages: @@ -63,32 +72,47 @@ - libboost-date-time-dev - lcov before_script: - - cd build && cmake -DCMAKE_INSTALL_PREFIX=../../install -DCMAKE_BUILD_TYPE=Debug .. + - cd build && cmake -DCMAKE_INSTALL_PREFIX=../../install -DCMAKE_BUILD_TYPE=Debug -DCMAKE_BUILD_TYPE=Debug -DCODE_COVERAGE=ON .. script: - cmake --build . --target install - ctest - - ctest -T memcheck after_success: # Create lcov report - lcov --capture --directory . --output-file coverage.info - - lcov --remove coverage.info '/usr/*' --output-file coverage.info # filter system-files + - lcov --remove coverage.info '/usr/include/*' '*/ini/*' '*/test/*' --output-file coverage.info # filter system-files - lcov --list coverage.info # debug info # Uploading report to CodeCov - bash <(curl -s https://codecov.io/bash) -f coverage.info || echo "Codecov did not collect coverage reports" - - os: linux dist: bionic name: "CentOS-7 Docker" before_script: - docker run --name centos7_toconfigure -v `pwd`:/root/open-license-manager centos:centos7 /bin/bash -c "yum -y update && yum -y install install centos-release-scl && - yum -y install cmake boost boost-devel boost-static openssl openssl-devel glibc-static devtoolset-7-toolchain devtoolset-7-gcc devtoolset-7-gcc-c++ devtoolset-7-valgrind-devel && - cd /root/open-license-manager/build && - CC=/opt/rh/devtoolset-7/root/usr/bin/gcc CXX=/opt/rh/devtoolset-7/root/usr/bin/g++ cmake .." + yum -y install wget boost boost-devel boost-static openssl openssl-devel openssl-static glibc-static devtoolset-7-toolchain devtoolset-7-gcc devtoolset-7-gcc-c++ devtoolset-7-valgrind-devel && + wget https://cmake.org/files/v3.11/cmake-3.11.0.tar.gz && tar zxvf cmake-3.11.0.tar.gz && cd cmake-3.11.0 && + export CC=/opt/rh/devtoolset-7/root/usr/bin/gcc && export CXX=/opt/rh/devtoolset-7/root/usr/bin/g++ && + ./bootstrap && make && make install && cd /root/open-license-manager/build && cmake .." - docker commit centos7_toconfigure centos7_configured script: - docker run --name centos7_make -v `pwd`:/root/open-license-manager centos7_configured /bin/bash -c "cd /root/open-license-manager/build && make && make install && VIRT_ENV=CONTAINER make test" + - os: linux + dist: bionic + name: "CentOS-8 Docker" + before_script: + - docker run --name centos8_toconfigure -v `pwd`:/root/open-license-manager centos:centos8 /bin/bash -c \ + "yum -y update && yum -y groupinstall 'Development Tools' && + yum -y install wget cmake boost boost-devel openssl-devel zlib-devel && + dnf -y --enablerepo=PowerTools install boost-static && + wget https://github.com/openssl/openssl/archive/OpenSSL_1_1_1d.tar.gz && + tar xzf OpenSSL_1_1_1d.tar.gz && cd openssl-OpenSSL_1_1_1d && + ./config && make -j 8 && make install && + cd /root/open-license-manager/build && cmake .." + - docker commit centos8_toconfigure centos8_configured + script: + - docker run --name centos8_make -v `pwd`:/root/open-license-manager centos8_configured /bin/bash -c \ + "cd /root/open-license-manager/build && make && make install && VIRTUAL_ENV=DOCKER make test" - os: linux dist: bionic name: "Ubuntu 18.04 - MinGW cross-compile for Windows x64" @@ -163,9 +187,45 @@ script: - travis_wait 20 cmake --build . --target install --config Release - ctest -C Release - + - os: linux + dist: bionic + stage: documentation + name: "Deploy documentation" + addons: + apt: + packages: + - cmake + - libssl-dev + - zlib1g-dev + - libboost-dev + - libboost-test-dev + - libboost-filesystem-dev + - libboost-iostreams-dev + - libboost-program-options-dev + - libboost-system-dev + - libboost-thread-dev + - libboost-date-time-dev + - python3-pip + - python3-setuptools + - doxygen + - graphviz + before_script: + - pip3 install setuptools sphinx sphinx_rtd_theme breathe sphinx-markdown-tables recommonmark sphinx-rtd-theme sphinx-sitemap sphinxemoji + - cd build && cmake -DCMAKE_INSTALL_PREFIX=../../install .. + script: + - make documentation + deploy: + provider: pages + skip_cleanup: true + github_token: $GITHUB_TOKEN + keep_history: false + verbose: true + target_branch: "gh-pages" + local_dir: "build/docs/sphinx" + on: + branch: develop env: - - CTEST_OUTPUT_ON_FAILURE=1 + - CTEST_OUTPUT_ON_FAILURE=1 before_script: - cd build && cmake -DCMAKE_INSTALL_PREFIX=../../install .. -- Gitblit v1.9.1