From da3b495625cbaa00276c542a8b8878c1841e9454 Mon Sep 17 00:00:00 2001 From: wlandau Date: Fri, 11 Oct 2024 12:25:40 -0400 Subject: [PATCH] update coverage workflow --- .github/workflows/cover.yaml | 35 ++++++++++++++++++++--------------- 1 file changed, 20 insertions(+), 15 deletions(-) diff --git a/.github/workflows/cover.yaml b/.github/workflows/cover.yaml index ce88ce0..d744329 100644 --- a/.github/workflows/cover.yaml +++ b/.github/workflows/cover.yaml @@ -4,19 +4,19 @@ on: push: branches: [main, master] pull_request: - branches: [main, master] -name: cover +name: test-coverage.yaml + +permissions: read-all jobs: - cover: + test-coverage: runs-on: ubuntu-latest env: - CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: system dependencies if: runner.os == 'Linux' @@ -26,35 +26,40 @@ jobs: with: use-public-rspm: true - - name: Add r-universe to repos - run: | - cat("\noptions(repos=c(paws='https://paws-r.r-universe.dev',wlandau='https://wlandau.r-universe.dev',CRAN ='https://cloud.r-project.org'))\n", file = "~/.Rprofile", append = TRUE) - shell: Rscript {0} - - uses: r-lib/actions/setup-r-dependencies@v2 with: - extra-packages: any::covr + extra-packages: any::covr, any::xml2 needs: coverage - name: Test coverage run: | - covr::codecov( + cov <- covr::package_coverage( quiet = FALSE, clean = FALSE, - install_path = file.path(Sys.getenv("RUNNER_TEMP"), "package") + install_path = file.path(normalizePath(Sys.getenv("RUNNER_TEMP"), winslash = "/"), "package") ) + covr::to_cobertura(cov) shell: Rscript {0} + - uses: codecov/codecov-action@v4 + with: + # Fail if error if not on PR, or if on PR and token is given + fail_ci_if_error: ${{ github.event_name != 'pull_request' || secrets.CODECOV_TOKEN }} + file: ./cobertura.xml + plugin: noop + disable_search: true + token: ${{ secrets.CODECOV_TOKEN }} + - name: Show testthat output if: always() run: | ## -------------------------------------------------------------------- - find ${{ runner.temp }}/package -name 'testthat.Rout*' -exec cat '{}' \; || true + find '${{ runner.temp }}/package' -name 'testthat.Rout*' -exec cat '{}' \; || true shell: bash - name: Upload test results if: failure() - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: coverage-test-failures path: ${{ runner.temp }}/package