From 20d89af0ecad70946687ee6307e7a361ad5e1a8d Mon Sep 17 00:00:00 2001 From: Thomas Vincent Date: Fri, 10 Dec 2021 11:45:18 -0500 Subject: [PATCH] add a stand alone build in CI --- .github/workflows/github-actions.yml | 17 +++++- .travis.yml | 78 ---------------------------- 2 files changed, 16 insertions(+), 79 deletions(-) delete mode 100644 .travis.yml diff --git a/.github/workflows/github-actions.yml b/.github/workflows/github-actions.yml index 5a7d96d..9cbc173 100644 --- a/.github/workflows/github-actions.yml +++ b/.github/workflows/github-actions.yml @@ -25,7 +25,7 @@ jobs: - name: Build and install nlohmann json run: | cd nlohmann-json - cmake -S . -B build + cmake -S . -DJSON_VALIDATOR_BUILD_EXAMPLES=ON -DDJSON_VALIDATOR_BUILD_TESTS=ON -B build cmake --build build --target install -j$(nproc) cd .. - name: Clone json-schema-validator @@ -36,3 +36,18 @@ jobs: run: cmake --build build --target all -j$(nproc) - name: test run: cd build && ctest + build_and_test_stand_alone: + runs-on: ubuntu-latest + container: ghcr.io/nlohmann/json-ci:v1.0.0 + steps: + - run: echo "🎉 The job was automatically triggered by a ${{ github.event_name }} event." + - run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by GitHub." + - run: echo "🔎 Branch name is ${{ github.ref }} and repository is ${{ github.repository }}." + - name: Clone json-schema-validator + uses: actions/checkout@v2 + - name: cmake + run: cmake -S . -DJSON_VALIDATOR_BUILD_EXAMPLES=ON -DDJSON_VALIDATOR_BUILD_TESTS=ON -B build + - name: build + run: cmake --build build --target all -j$(nproc) + - name: test + run: cd build && ctest diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 11bd085..0000000 --- a/.travis.yml +++ /dev/null @@ -1,78 +0,0 @@ -######################### -# project configuration # -######################### - -# C++ project -language: cpp - -dist: trusty -sudo: required -group: edge - -matrix: - include: - - os: linux - compiler: gcc - env: COMPILER=g++-4.9 - addons: - apt: - sources: ['ubuntu-toolchain-r-test'] - packages: ['g++-4.9', 'ninja-build'] - - - os: linux - compiler: gcc - env: COMPILER=g++-5 - addons: - apt: - sources: ['ubuntu-toolchain-r-test'] - packages: ['g++-5', 'ninja-build'] - - - os: linux - compiler: gcc - env: COMPILER=g++-6 - addons: - apt: - sources: ['ubuntu-toolchain-r-test'] - packages: ['g++-6', 'ninja-build'] - - - os: linux - compiler: gcc - env: COMPILER=g++-7 - addons: - apt: - sources: ['ubuntu-toolchain-r-test'] - packages: ['g++-7', 'ninja-build'] - -script: - # get CMake and Ninja (only for systems with brew - macOS) - - | - if [[ (-x $(which brew)) ]]; then - brew update - brew install cmake ninja - brew upgrade cmake - fi - # make sure CXX is correctly set - - if [[ "${COMPILER}" != "" ]]; then export CXX=${COMPILER}; fi - - # show OS/compiler version - - uname -a - - cmake --version - - $CXX --version - - # put json.hpp to nlohmann - - mkdir -p nlohmann && wget https://github.com/nlohmann/json/releases/download/v3.8.0/json.hpp -O nlohmann/json.hpp - - # compile and execute unit tests - - mkdir -p build && cd build - - cmake .. -Dnlohmann_json_DIR=.. ${CMAKE_OPTIONS} -GNinja && cmake --build . --config Release - - ctest -C Release -V -j - - cd .. - - # Remove previous build and tests - - rm -r build - - # Compile and execute with no nlohmann/json.hpp so it will fetch if - - mkdir -p build && cd build - - cmake .. ${CMAKE_OPTIONS} -GNinja && cmake --build . --config Release - - ctest -C Release -V -j - - cd .. \ No newline at end of file