| | |
| | | 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 |
| | | - CTEST_OUTPUT_ON_FAILURE=1 |
| | | addons: |
| | | apt: |
| | | packages: |
| | |
| | | - libboost-date-time-dev |
| | | script: |
| | | - cmake --build . --target install |
| | | - ctest |
| | | - src/inspector/lccinspector |
| | | - ctest -T memcheck |
| | | - os: linux |
| | | dist: xenial |
| | |
| | | - os: linux |
| | | dist: bionic |
| | | name: "Ubuntu 18.04 - Travis CI VM - Debug build" |
| | | env: |
| | | - VIRTUAL_ENV=VM |
| | | - CTEST_OUTPUT_ON_FAILURE=1 |
| | | addons: |
| | | apt: |
| | | packages: |
| | |
| | | - cd build && cmake -DCMAKE_INSTALL_PREFIX=../../install -DCMAKE_BUILD_TYPE=Debug -DCMAKE_BUILD_TYPE=Debug -DCODE_COVERAGE=ON .. |
| | | script: |
| | | - cmake --build . --target install |
| | | - src/inspector/lccinspector |
| | | - ctest |
| | | - ctest -T memcheck |
| | | after_success: |
| | | # Create lcov report |
| | | - lcov --capture --directory . --output-file coverage.info |
| | |
| | | - 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" |
| | |
| | | - 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" |
| | | "cd /root/open-license-manager/build && make && make install && VIRTUAL_ENV=CONTAINER make test" |
| | | - os: linux |
| | | dist: bionic |
| | | name: "CentOS-8 Docker" |
| | |
| | | - 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" |
| | | "cd /root/open-license-manager/build && make && make install && src/inspector/lccinspector && VIRTUAL_ENV=DOCKER make test" |
| | | - os: linux |
| | | dist: bionic |
| | | name: "Ubuntu 18.04 - MinGW cross-compile for Windows x64" |
| | |
| | | - cmake -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchain-ubuntu-mingw64.cmake -DCMAKE_INSTALL_PREFIX=../../install -DBOOST_ROOT=$PWD/boost_1_71_0/dist -DOPENSSL_ROOT_DIR=$PWD/openssl-1.0.2h-win64-mingw/ .. |
| | | - os: windows |
| | | name: "Widnows server 1803 - Visual Studio 15 2017 Win64 - (/MD)" |
| | | cache: |
| | | edge: true |
| | | directories: |
| | | - "/C/local/boost" |
| | | before_script: |
| | | - travis_wait 40 ./scripts/windows_download_boost.bat |
| | | - cd "${TRAVIS_BUILD_DIR}/build" |
| | |
| | | |
| | | - os: windows |
| | | name: "Widnows server 1803 - Visual Studio 15 2017 Win64 - (/MT)" |
| | | cache: |
| | | edge: true |
| | | directories: |
| | | - "/C/local/boost" |
| | | before_script: |
| | | - travis_wait 40 ./scripts/windows_download_boost.bat |
| | | - cd "${TRAVIS_BUILD_DIR}" |
| | | - cd build && cmake -G "Visual Studio 15 2017 Win64" -DBOOST_ROOT="C:/local/boost" -DSTATIC_RUNTIME=1 .. |
| | | |
| | | - os: windows |
| | | name: "Widnows server 1803 - MinGW Win64" |
| | | env: |
| | | - CACHE_NAME=boost-mingw |
| | | cache: |
| | | name: boost-mingw |
| | | edge: true |
| | | directories: |
| | | - "/C/local/boost" |
| | | - "./boost-mingw" |
| | | before_script: |
| | | - | |
| | | if [ -d "/C/local/boost/lib" ]; then |
| | | if [ -d "${TRAVIS_BUILD_DIR}/boost-mingw/lib" ]; then |
| | | echo "Boost already installed" |
| | | else |
| | | echo "Boost not cached, compiling it" |
| | |
| | | travis_wait 20 7z x boost_1_68_0.7z -oC:/local |
| | | cd "C:/local/boost_1_68_0" |
| | | ./bootstrap.bat gcc |
| | | travis_wait 40 ./b2.exe -d0 --with-date_time --with-test --with-filesystem --with-program_options --with-regex --with-serialization --with-system runtime-link=static toolset=gcc --prefix=C:/local/boost install |
| | | travis_wait 40 ./b2.exe -d0 --with-date_time --with-test --with-filesystem --with-program_options --with-regex --with-serialization --with-system runtime-link=static toolset=gcc --prefix=${TRAVIS_BUILD_DIR}/boost-mingw install |
| | | echo "Boost installed" |
| | | cd /C/local/boost/lib |
| | | cd ${TRAVIS_BUILD_DIR}/boost-mingw/lib |
| | | dir |
| | | fi |
| | | - cd "${TRAVIS_BUILD_DIR}" |
| | | - cd build && cmake -G "MinGW Makefiles" -DBOOST_ROOT="C:/local/boost" -DBoost_ARCHITECTURE="-x64" -DCMAKE_CXX_COMPILER_ARCHITECTURE_ID="x64" -DCMAKE_SH="CMAKE_SH-NOTFOUND" .. |
| | | - cd build && cmake -G "MinGW Makefiles" -DBOOST_ROOT="${TRAVIS_BUILD_DIR}/boost-mingw" -DBoost_ARCHITECTURE="-x64" -DCMAKE_CXX_COMPILER_ARCHITECTURE_ID="x64" -DCMAKE_SH="CMAKE_SH-NOTFOUND" .. |
| | | 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 .. |
| | | |