From c564de8e07c5ff9a2d4139691ff734a01321513d Mon Sep 17 00:00:00 2001 From: JackLivio Date: Thu, 15 Jul 2021 14:17:48 -0400 Subject: Coverity Github Actions CI (#3737) * Add Coverity CI * Fix syntax * test * test * Add enviroment * Add env * Upload coverity result * Apply only for master branch prs --- .github/workflows/sdl_core_github_ci_coverity.yml | 63 +++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 .github/workflows/sdl_core_github_ci_coverity.yml (limited to '.github') diff --git a/.github/workflows/sdl_core_github_ci_coverity.yml b/.github/workflows/sdl_core_github_ci_coverity.yml new file mode 100644 index 0000000000..c60482d30f --- /dev/null +++ b/.github/workflows/sdl_core_github_ci_coverity.yml @@ -0,0 +1,63 @@ +name: SDL Core Build With Coverity +on: + push: + branches: + - master + pull_request: + branches: + - master +jobs: + build: + environment: Coverity + runs-on: ubuntu-20.04 + steps: + - shell: bash + env: + COVERITY_SECRET: ${{ secrets.COVERITY_TOKEN }} + run: | + echo "$COVERITY_SECRET" && echo ${{ secrets.COVERITY_TOKEN }} && echo "end" + - uses: actions/checkout@v2 + - name: Init Submodules + run: git -C ${{ github.workspace }} submodule update --init --recursive + # Install Dependencies + - name: Apt Get Dependencies + run: sudo apt-get update && sudo apt-get install libssl-dev libbluetooth3 libbluetooth-dev libudev-dev cmake html2text lcov git cmake automake1.11 build-essential libavahi-client-dev sqlite3 libsqlite3-dev libgtest-dev bluez-tools libpulse-dev libusb-1.0.0-dev cppcheck python3-pip python3-setuptools && sudo apt-get install -f clang-format-6.0 + - name: Setup CMAKE + uses: jwlawson/actions-setup-cmake@v1.8 + with: + cmake-version: '3.16.3' + # Build Project + - name: Cache 3rd Party + id: core-3rd-party + uses: actions/cache@v2 + with: + path: ${{ github.workspace }}/core_3rd_party + key: ${{ runner.os }}-core-3rd-party-v3 + - name: Make 3rd Party Directory + if: steps.core-3rd-party.outputs.cache-hit != 'true' + run: mkdir ${{ github.workspace }}/core_3rd_party + - name: Make Directories + run: cd ${{ github.workspace }} && cd ../ && mkdir build && cd build + - name: Set 3rd Party Path + run: echo "THIRD_PARTY_INSTALL_PREFIX=${{ github.workspace }}/core_3rd_party" >> $GITHUB_ENV + - name: Set 3rd Party ARCH Path + run: echo "THIRD_PARTY_INSTALL_PREFIX_ARCH=${{ github.workspace }}/core_3rd_party" >> $GITHUB_ENV + - name: Configure + run: cmake ../sdl_core -DLOGGER_NAME=BOOST + - name: Download Coverity + env: + COVERITY_SECRET: ${{ secrets.COVERITY_TOKEN }} + run: wget https://scan.coverity.com/download/linux64 --post-data "token=${COVERITY_SECRET}&project=smartdevicelink%2Fsdl_core" -O coverity_tool.tgz + - name: unzip + run: tar zxvf coverity_tool.tgz + - name: Build + run: make install-3rd_party && ./cov-analysis-linux64-2020.09/bin/cov-build --dir cov-int make -j `nproc` install + - name: Set Library Path + run: echo "LD_LIBRARY_PATH=$THIRD_PARTY_INSTALL_PREFIX/lib:." >> $GITHUB_ENV + - name: Compress Coverity + run: tar czvf myproject.tgz cov-int + - name: Upload Coverity + env: + COVERITY_SECRET: ${{ secrets.COVERITY_TOKEN }} + run: curl --form token=${COVERITY_SECRET} --form email=jack@livio.io --form file=@myproject.tgz --form version="Version" --form description="Description" https://scan.coverity.com/builds?project=smartdevicelink%2Fsdl_core + -- cgit v1.2.1