mirror of
https://github.com/kdave/btrfs-progs
synced 2024-12-18 12:25:12 +00:00
c4190ca330
To ensure that package indexes are up to date. That should help to avoid recent failed CI runs, which failed to install certain packages as local cache is out-of-date and remote mirrors no longer provide that specific (and out-of-date) version of package: E: Failed to fetch http://azure.archive.ubuntu.com/ubuntu/pool/main/s/systemd/libudev-dev_255.4-1ubuntu8.1_amd64.deb 404 Not Found [IP: 52.147.219.192 80] Signed-off-by: Yaroslav Halchenko <debian@onerussian.com> [ Minor modification on the commit message. ] Signed-off-by: Qu Wenruo <wqu@suse.com> [ Move cache update to a separate command. ] Signed-off-by: David Sterba <dsterba@suse.com>
66 lines
2.3 KiB
YAML
66 lines
2.3 KiB
YAML
# Code coverage when running all the tests, lcov published as artifacts
|
|
|
|
name: Code coverage tests
|
|
run-name: Code coverage tests
|
|
on:
|
|
push:
|
|
branches:
|
|
- coverage-test
|
|
- master
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-24.04
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- run: uname -a
|
|
- run: sudo modprobe btrfs
|
|
- run: sudo apt-get update -qqq
|
|
- run: sudo apt-get install -y pkg-config gcc liblzo2-dev libzstd-dev libblkid-dev uuid-dev zlib1g-dev libext2fs-dev e2fsprogs libudev-dev python3-sphinx libaio-dev liburing-dev attr jq lcov
|
|
- name: Configure
|
|
run: ./autogen.sh && ./configure --disable-documentation
|
|
- name: Make
|
|
run: make V=1 D=gcov
|
|
- name: Tests cli
|
|
run: sudo make D=gcov TEST_LOG=dump test-cli
|
|
- name: Tests mkfs
|
|
run: sudo make D=gcov TEST_LOG=dump test-mkfs
|
|
- name: Tests check
|
|
run: sudo make D=gcov TEST_LOG=dump test-check
|
|
- name: Tests check (lowmem)
|
|
run: sudo make D=gcov TEST_LOG=dump test-check-lowmem
|
|
- name: Tests misc
|
|
run: sudo make D=gcov TEST_LOG=dump test-misc
|
|
- name: Tests fuzz
|
|
run: sudo make D=gcov TEST_LOG=dump test-fuzz
|
|
- name: Tests convert
|
|
run: sudo make D=gcov TEST_LOG=dump test-convert
|
|
- name: Test internal APIs
|
|
run: make D=gcov test-api
|
|
- name: Libbtrfsutil test
|
|
run: make D=gcov test-libbtrfsutil
|
|
- name: Libbtrfs build test
|
|
run: make D=gcov library-test
|
|
- name: Tests hash (correctness)
|
|
run: make D=gcov hash-vectest && ./hash-vectest
|
|
- name: Generate lcov results
|
|
run: |
|
|
lcov -c -d . -o lcov-info
|
|
genhtml --rc geninfo_unexecuted_blocks=1 -o lcov-out lcov-info
|
|
- name: Save lcov results
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: lcov-out
|
|
path: lcov-out
|
|
- name: Upload coverage reports to Codecov
|
|
uses: codecov/codecov-action@v4
|
|
with:
|
|
token: ${{ secrets.CODECOV_TOKEN }}
|
|
files: ${{ github.workspace }}/lcov-info
|
|
- name: Save logs on failure
|
|
if: ${{ failure() }}
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: test-results
|
|
path: "tests/*-results.txt"
|
|
if-no-files-found: ignore
|