name: Codecov on: [push, pull_request] jobs: run: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Install required packages run: | sudo apt-get update sudo apt-get install --yes cmake ninja-build libcurl4-openssl-dev zlib1g-dev libpng-dev libjpeg-dev nettle-dev pkg-config libpugixml-dev gettext libseccomp-dev libfmt-dev libzstd-dev liblz4-dev liblzo2-dev qtbase5-dev qttools5-dev-tools extra-cmake-modules libkf5kio-dev libkf5widgetsaddons-dev libkf5filemetadata-dev libkf5crash-dev libglib2.0-dev libgtk2.0-dev libgdk-pixbuf2.0-dev libcanberra-dev libgsound-dev libgtk-3-dev libcairo2-dev libthunarx-3-dev libcanberra-gtk3-dev libnautilus-extension-dev libgtk-4-dev lcov - name: Run CMake run: cmake . -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr -DBUILD_XFCE=ON -DBUILD_GTK3=ON -DBUILD_GTK4=ON -DBUILD_KF5=ON -DBUILD_TESTING=ON -DENABLE_COVERAGE=ON -DTRACKER_INSTALL_API_VERSION=3 -G Ninja - name: Run Ninja run: ninja - name: Run tests run: ctest -V -C Release --output-junit junit.xml env: LD_LIBRARY_PATH: ${{ github.workspace }}/lib - name: Upload coverage to Codecov uses: codecov/codecov-action@v4 with: gcov: true token: ${{ secrets.CODECOV_TOKEN }} - name: Upload test results to Codecov if: ${{ !cancelled() }} uses: codecov/test-results-action@v1 with: files: ./junit.xml token: ${{ secrets.CODECOV_TOKEN }}