From 6028be193cbc6998f8b807572ca805a859be1682 Mon Sep 17 00:00:00 2001 From: Hoshiumi Arata Date: Mon, 18 Nov 2024 23:19:28 +0900 Subject: [PATCH] Add GitHub Actions workflow for coverage reporting --- .github/workflows/coverage.yml | 38 ++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 .github/workflows/coverage.yml diff --git a/.github/workflows/coverage.yml b/.github/workflows/coverage.yml new file mode 100644 index 000000000..7476a17ab --- /dev/null +++ b/.github/workflows/coverage.yml @@ -0,0 +1,38 @@ +name: Coverage + +on: [push] + +jobs: + coverage: + name: Coverage + runs-on: ubuntu-24.04 + env: + MRUBY_CONFIG: ci/gcc-clang + CC: gcc + CXX: g++ + LD: gcc + CFLAGS: -O0 -g --coverage + LDFLAGS: --coverage + steps: + - name: "Checkout ${{ github.ref }} ( ${{ github.sha }} )" + uses: actions/checkout@v4 + - name: Ruby version + run: ruby -v + - name: Compiler version + run: ${{ env.CC }} --version + - name: Build and test + run: rake test + - name: Install gcovr + run: pip install gcovr + - name: Generate coverage report + run: | + echo "# Coverage report" > $GITHUB_STEP_SUMMARY + echo \`\`\` >> $GITHUB_STEP_SUMMARY + gcovr -e ".*_test.c" -e ".*/test/.*" -s --html-details -o coverage/ build >> $GITHUB_STEP_SUMMARY + echo \`\`\` >> $GITHUB_STEP_SUMMARY + - name: Upload coverage report + uses: actions/upload-artifact@v4 + with: + name: coverage-${{ github.sha }} + path: coverage/ + retention-days: 14