From ff98d4b3df98899fa82ac5f0623dd1e1dad85def Mon Sep 17 00:00:00 2001
From: Gabriele Contini <gcontini@users.noreply.github.com>
Date: 周六, 01 2月 2020 00:11:31 +0800
Subject: [PATCH] Deploy documentation to gh-pages branch (#74)

---
 .travis.yml |   60 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 56 insertions(+), 4 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index 52c80db..cac6349 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,7 +1,12 @@
 language: cpp
 services: docker
 
-matrix:
+stages:
+   - name: test
+   - name: documentation
+     if: branch = develop 
+
+jobs:
    include:
    - os: linux
      dist: bionic
@@ -63,7 +68,7 @@
              - 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
@@ -71,7 +76,7 @@
      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"
@@ -89,6 +94,22 @@
         - 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 && VIRT_ENV=CONTAINER make test"
    - os: linux
      dist: bionic
@@ -164,7 +185,38 @@
      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
+             - doxygen
+             - graphviz
+     script: 
+        - make docs
+     deploy:
+        provider: pages
+        skip_cleanup: true
+        github_token: $GITHUB_TOKEN
+        keep_history: false
+        verbose: true
+        target_branch: "gh-pages"
+        local_dir: "build/html"
+        on:
+            branch: develop
 env:
     - CTEST_OUTPUT_ON_FAILURE=1      
 before_script:

--
Gitblit v1.9.1