From 47b7b560228ceb1169346d5963d04575d520a4c3 Mon Sep 17 00:00:00 2001 From: Bjoern Hiller Date: Sun, 10 Mar 2024 15:51:04 +0100 Subject: [PATCH] Rewrite github action --- .github/workflows/main.yml | 144 ++++++++++++++++++------------------- .valgrind.suppressions | 44 ++++++++++++ 2 files changed, 116 insertions(+), 72 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 56cf410e3..e7480ee25 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -11,16 +11,14 @@ jobs: enforce-g_malloc: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 - with: - # Clone the whole branch, we have to fetch tags later - fetch-depth: 0 + - uses: actions/checkout@v4 - - name: enforce-g_malloc - run: "! git grep -P '(?> ${GITHUB_ENV} + + - name: configure safe directory for git + run: git config --global --add safe.directory ${GITHUB_WORKSPACE} + + - name: build + run: make -j all dunstify test/test + + - name: test + run: make -j test + + - name: installation + run: ./test/test-install.sh + + - name: valgrind memleaks + run: make -j clean test-valgrind runs-on: ubuntu-latest container: - image: dunst/ci:${{ matrix.distro }} + image: ghcr.io/dunst-project/docker-images:${{ matrix.distro }} - doxygen: - strategy: - matrix: - distro: - - misc-doxygen + coverage: + needs: build + if: github.repository == 'dunst-project/dunst' + env: + CC: gcc steps: - - uses: actions/checkout@v2 - with: - # Clone the whole branch, we have to fetch tags later - fetch-depth: 0 + - uses: actions/checkout@v4 + with: + # Clone the whole history including tags. + fetch-depth: 0 + + - name: setup $HOME for git + run: echo "HOME=${RUNNER_TEMP}" >> ${GITHUB_ENV} + + - name: configure safe directory for git + run: git config --global --add safe.directory ${GITHUB_WORKSPACE} + + - name: coverage + run: make clean test-coverage + + - name: Generate coverage report + run: lcov -c -d . -o lcov.info + + - name: Upload coverage to Codecov + uses: codecov/codecov-action@v3 + with: + token: ${{ secrets.CODECOV_TOKEN }} + flags: unittests + name: fedora-gcc + fail_ci_if_error: true + + runs-on: ubuntu-latest + container: + image: ghcr.io/dunst-project/docker-images:fedora + + doxygen: + steps: + - uses: actions/checkout@v4 - - name: doxygen - run: make -j doc-doxygen + - name: doxygen + run: make -j doc-doxygen runs-on: ubuntu-latest container: - image: dunst/ci:${{ matrix.distro }} + image: ghcr.io/dunst-project/docker-images:misc-doxygen diff --git a/.valgrind.suppressions b/.valgrind.suppressions index a18fc67c1..50236d37f 100644 --- a/.valgrind.suppressions +++ b/.valgrind.suppressions @@ -135,3 +135,47 @@ obj:*pango* ... } + +{ + rsvg_conditional_jump + Memcheck:Cond + obj:/usr/lib*/librsvg-2.so.2.48.0 + ... + fun:rsvg_handle_get_pixbuf + obj:/usr/lib*/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-svg.so + obj:/usr/lib*/libgdk_pixbuf-2.0.so.0.4200.10 + fun:gdk_pixbuf_new_from_file + fun:notification_setup_raw_image + fun:notification_load_icon_with_scaling + ... +} + +{ + # Basically the same as above, but just for Debian + rsvg_conditional_jump-debian + Memcheck:Cond + obj:/usr/lib/*/librsvg-2.so.2.48.0 + ... + fun:rsvg_handle_get_pixbuf + obj:/usr/lib/*/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-svg.so + obj:/usr/lib/*/libgdk_pixbuf-2.0.so.0.4200.8 + fun:gdk_pixbuf_new_from_file + fun:notification_setup_raw_image + fun:notification_load_icon_with_scaling + ... +} + +{ + # Basically the same as above, but just for Ubuntu Focal + rsvg_conditional_jump-ubuntu_focal + Memcheck:Cond + obj:/usr/lib/*/librsvg-2.so.2.47.0 + ... + fun:rsvg_rust_handle_close + obj:/usr/lib/*/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-svg.so + obj:/usr/lib/*/libgdk_pixbuf-2.0.so.0.4000.0 + fun:gdk_pixbuf_new_from_file + fun:notification_setup_raw_image + fun:notification_load_icon_with_scaling + ... +}