From 1ab05536359204732a9d06e4ec719039ed83d9ee Mon Sep 17 00:00:00 2001 From: Bui Nguyen Quoc Thanh <49302843+thanhbnq@users.noreply.github.com> Date: Wed, 29 Jun 2022 16:31:51 +0700 Subject: Update for CI (#389) - Add ctest in Actions - Remove travis ci - Update Build Status in README.md Signed-off-by: Bui Nguyen Quoc Thanh --- .github/workflows/cmake-ctest.yml | 37 ++++++++++++++++++++++ .travis/gtest_dlt_all.sh | 66 --------------------------------------- README.md | 4 ++- 3 files changed, 40 insertions(+), 67 deletions(-) create mode 100644 .github/workflows/cmake-ctest.yml delete mode 100755 .travis/gtest_dlt_all.sh diff --git a/.github/workflows/cmake-ctest.yml b/.github/workflows/cmake-ctest.yml new file mode 100644 index 0000000..6cbfa51 --- /dev/null +++ b/.github/workflows/cmake-ctest.yml @@ -0,0 +1,37 @@ +name: CMake + +on: + push: + branches: [ "master" ] + pull_request: + branches: [ "master" ] + +env: + # Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.) + BUILD_TYPE: Release + WITH_DLT_UNIT_TESTS: ON + +jobs: + build: + # The CMake configure and build commands are platform agnostic and should work equally well on Windows or Mac. + # You can convert this to a matrix build if you need cross-platform coverage. + # See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + + - name: Configure CMake + # Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make. + # See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type + run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DWITH_DLT_UNIT_TESTS=${{env.WITH_DLT_UNIT_TESTS}} + + - name: Build + # Build your program with the given configuration + run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}} + + - name: Test + working-directory: ${{github.workspace}}/build + # Execute tests defined by the CMake configuration. + # See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail + run: ctest -C ${{env.BUILD_TYPE}} diff --git a/.travis/gtest_dlt_all.sh b/.travis/gtest_dlt_all.sh deleted file mode 100755 index 8cae6a5..0000000 --- a/.travis/gtest_dlt_all.sh +++ /dev/null @@ -1,66 +0,0 @@ -#!/bin/bash -################################################################################ -# SPDX license identifier: MPL-2.0 -# -# Copyright (C) 2019, Advanced Driver Information Technology -# This code is developed by Advanced Driver Information Technology. -# Copyright of Advanced Driver Information Technology, Bosch and DENSO. -# -# This file is part of GENIVI Project DLT - Diagnostic Log and Trace. -# -# This Source Code Form is subject to the terms of the -# Mozilla Public License (MPL), v. 2.0. -# If a copy of the MPL was not distributed with this file, -# You can obtain one at http://mozilla.org/MPL/2.0/. -# -# For further information see http://www.genivi.org/. -################################################################################ - -################################################################################ -#file : gtest_dlt_all.sh -# -#Description : Run all unit tests in Travis CI -# -#Author Name : Saya Sugiura -################################################################################ - -function gtest_run_test() -{ - LOG="../.travis/$1.log" - - # Send all messsages and system errors to log file - export LIBC_FATAL_STDERR_=1 - - # Execute unit test - { ./$1 ;} > $LOG 2>&1 - - # Release - export LIBC_FATAL_STDERR_=0 - - # Check for result - grep "FAILED TEST\|core dumped" $LOG - if [ $? -eq 0 ] - then - cat $LOG - echo "$1 failed" - exit 1 - fi - echo "$1 passed" -} - -CTEST_OUTPUT_ON_FAILURE=1 make test - -pushd tests > /dev/null - -# Without General section in dlt_gateway.conf -./gtest_dlt_daemon_gateway.sh > /dev/null -gtest_run_test gtest_dlt_daemon_gateway - -# With General section in dlt_gateway.conf -./gtest_dlt_daemon_gateway.sh -w > /dev/null -gtest_run_test gtest_dlt_daemon_gateway - -./gtest_dlt_daemon_offline_log.sh > /dev/null -gtest_run_test gtest_dlt_daemon_offline_log - -popd > /dev/null diff --git a/README.md b/README.md index 788a954..6a76de6 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,11 @@ # Diagnostic Log and Trace -Build and Test status: [![Build Status](https://travis-ci.com/GENIVI/dlt-daemon.svg?branch=master)](https://travis-ci.com/GENIVI/dlt-daemon) +Build and Test status: [![Build Status](https://github.com/thanhbnq/dlt-daemon/actions/workflows/cmake.yml/badge.svg)](https://github.com/thanhbnq/dlt-daemon/actions/workflows/cmake.yml) Alerts: [![Total alerts](https://img.shields.io/lgtm/alerts/g/GENIVI/dlt-daemon.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/GENIVI/dlt-daemon/alerts/) Code quality: [![Language grade: C/C++](https://img.shields.io/lgtm/grade/cpp/g/GENIVI/dlt-daemon.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/GENIVI/dlt-daemon/context:cpp) +The Github Actions is now used for Build Status, former is Travis CI + # Diagnostic Log and Trace Welcome to GENIVI Diagnostic Log and Trace (DLT). If you are familiar with DLT -- cgit v1.2.1