From 37c435f5a2ebda3ef92a70b99c79131f734a6169 Mon Sep 17 00:00:00 2001 From: Thomas Bouffard <27200110+tbouffard@users.noreply.github.com> Date: Fri, 27 Aug 2021 12:22:05 +0200 Subject: [PATCH] [INFRA] Add GitHub workflow to check the package (#25) --- .Rbuildignore | 5 ++ .github/.gitignore | 1 + .github/workflows/R-CMD-check.yaml | 86 ++++++++++++++++++++++++++++++ DESCRIPTION | 13 ++--- README.md | 4 +- man/bpmnVisualization-package.Rd | 3 +- 6 files changed, 103 insertions(+), 9 deletions(-) create mode 100644 .Rbuildignore create mode 100644 .github/.gitignore create mode 100644 .github/workflows/R-CMD-check.yaml diff --git a/.Rbuildignore b/.Rbuildignore new file mode 100644 index 0000000..f56b928 --- /dev/null +++ b/.Rbuildignore @@ -0,0 +1,5 @@ +^\.github$ +^.*\.Rproj$ +^\.Rproj\.user$ +^CONTRIBUTING\.md$ +^LICENSE$ diff --git a/.github/.gitignore b/.github/.gitignore new file mode 100644 index 0000000..2d19fc7 --- /dev/null +++ b/.github/.gitignore @@ -0,0 +1 @@ +*.html diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml new file mode 100644 index 0000000..0b5b742 --- /dev/null +++ b/.github/workflows/R-CMD-check.yaml @@ -0,0 +1,86 @@ +# Initially created by following https://orchid00.github.io/actions_sandbox/packageci.html#set-up-package +# For help debugging build failures open an issue on the RStudio community with the 'github-actions' tag. +# https://community.rstudio.com/new-topic?category=Package%20development&tags=github-actions +on: + push: + branches: + - main + pull_request: + branches: + - main + +name: R-CMD-check + +jobs: + R-CMD-check: + runs-on: ${{ matrix.config.os }} + name: ${{ matrix.config.os }} (${{ matrix.config.r }}) + + strategy: + fail-fast: false + matrix: + config: + - {os: ubuntu-20.04, r: '3.6.3'} + - {os: ubuntu-20.04, r: '4.1.1'} + + env: + R_REMOTES_NO_ERRORS_FROM_WARNINGS: true + RSPM: https://packagemanager.rstudio.com/cran/__linux__/focal/latest + + steps: + - uses: actions/checkout@v2 + + - uses: r-lib/actions/setup-r@v1 + with: + r-version: ${{ matrix.config.r }} + + - uses: r-lib/actions/setup-pandoc@v1 + + - name: Query dependencies + run: | + install.packages('remotes') + saveRDS(remotes::dev_package_deps(dependencies = TRUE), ".github/depends.Rds", version = 2) + writeLines(sprintf("R-%i.%i", getRversion()$major, getRversion()$minor), ".github/R-version") + shell: Rscript {0} + + - name: Restore R package cache + uses: actions/cache@v2 + with: + path: ${{ env.R_LIBS_USER }} + key: ${{ runner.os }}-${{ hashFiles('.github/R-version') }}-1-${{ hashFiles('.github/depends.Rds') }} + restore-keys: ${{ runner.os }}-${{ hashFiles('.github/R-version') }}-1- + + - name: Install system dependencies + if: runner.os == 'Linux' + run: | + while read -r cmd + do + eval sudo $cmd + done < <(Rscript -e 'writeLines(remotes::system_requirements("ubuntu", "20.04"))') + + - name: Install dependencies + run: | + remotes::install_deps(dependencies = TRUE) + remotes::install_cran("rcmdcheck") + shell: Rscript {0} + + - name: Check + env: + _R_CHECK_CRAN_INCOMING_REMOTE_: false + run: | + options(crayon.enabled = TRUE) + rcmdcheck::rcmdcheck(args = c("--no-manual", "--as-cran"), error_on = "warning", check_dir = "check") + shell: Rscript {0} + + # TODO use when introducing tests (https://github.com/process-analytics/bpmn-visualization-R/issues/6) + # - name: Show testthat output + # if: always() + # run: find check -name 'testthat.Rout*' -exec cat '{}' \; || true + # shell: bash + + - name: Upload check results + if: failure() + uses: actions/upload-artifact@main + with: + name: ${{ matrix.config.os }}-r${{ matrix.config.r }}-results + path: check diff --git a/DESCRIPTION b/DESCRIPTION index bae367d..c828872 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,10 +1,11 @@ Package: bpmnVisualization Type: Package Title: BPMN Visualization - R package -Version: 1.0 -Date: 2021-08-25 -Authors@R: c(person("CĂ©line Souchet", "Developer", role = c("aut", "cre"), email = "celine.souchet@bonitasoft.com"), - person("Thomas Bouffard", "Developer", role = "aut")) -Description: A R package which embeds BPMN Visualization -License: Apache-2.0 +Version: 0.1.0 +Authors@R: c(person("Celine", "Souchet", role = c("aut", "cre"), email = "celine.souchet@bonitasoft.com"), + person("Thomas", "Bouffard", role = "aut")) +Description: A R package which embeds BPMN Visualization. +License: Apache License (== 2) Copyright: Bonitasoft S.A. +URL: https://github.com/process-analytics/bpmn-visualization-R +BugReports: https://github.com/process-analytics/bpmn-visualization-R/issues diff --git a/README.md b/README.md index 1fbc198..fbff847 100644 --- a/README.md +++ b/README.md @@ -4,8 +4,8 @@ GitHub release (latest by date including pre-releases) - - Build + + Build
diff --git a/man/bpmnVisualization-package.Rd b/man/bpmnVisualization-package.Rd index 9e801cc..d8ebe59 100644 --- a/man/bpmnVisualization-package.Rd +++ b/man/bpmnVisualization-package.Rd @@ -24,9 +24,10 @@ Maintainer: \packageMaintainer{bpmnVisualization} \references{ ~~ Literature or other references for background information ~~ } +\keyword{ ~~ Optionally other standard keywords, one per line, from file KEYWORDS in ~~ ~~ the R documentation directory ~~ -\keyword{ package } +} \seealso{ ~~ Optional links to other man pages, e.g. ~~ ~~ \code{\link[:-package]{}} ~~