Skip to content

R-CMD-check

R-CMD-check #50

Workflow file for this run

on:
push:
branches:
- main
- master
pull_request:
branches:
- main
- master
schedule:
- cron: '1 23 * * Sun'
name: R-CMD-check
defaults:
run:
shell: Rscript {0}
jobs:
R-CMD-check:
name: ${{ matrix.config.os }} (${{ matrix.config.r }})
timeout-minutes: 30
strategy:
fail-fast: false
matrix:
config:
- {os: ubuntu-latest, r: 'release'}
- {os: macOS-latest, r: 'release'}
- {os: windows-latest, r: 'release'}
- {os: windows-latest, r: 'oldrel'}
runs-on: ${{ matrix.config.os }}
env:
R_REMOTES_NO_ERRORS_FROM_WARNINGS: 'true'
R_COMPILE_AND_INSTALL_PACKAGES: 'never'
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
steps:
- uses: actions/checkout@v4
- name: Install Homebrew and qpdf (macOS only)
if: runner.os == 'macOS'
uses: Homebrew/actions/setup-homebrew@master
- name: Install qpdf (macOS only)
if: runner.os == 'macOS'
shell: bash
run: brew install qpdf
- name: Install system dependencies
if: runner.os == 'Linux'
shell: bash
run: |
. /etc/os-release
while read -r cmd
do
echo "$cmd"
sudo $cmd
done < <(Rscript -e "writeLines(remotes::system_requirements('$ID-$VERSION_ID'))")
- uses: r-lib/actions/setup-r@v2
id: setup-r
with:
r-version: ${{ matrix.config.r }}
use-public-rspm: true
- uses: r-lib/actions/setup-pandoc@v2
- uses: r-lib/actions/setup-r-dependencies@v2
with:
extra-packages: |
any::rcmdcheck
any::sessioninfo
any::remotes
any::reticulate
any::devtools
any::VGAM
# - name: Cache R packages
# uses: actions/cache@v3
# with:
# path: ${{ env.R_LIBS_USER }}
# key: ${{ runner.os }}-r-${{ matrix.config.r }}-{{ hashFiles('**/DESCRIPTION') }}
# restore-keys: |
# ${{ runner.os }}-r-${{ matrix.config.r }}-
# - name: Cache Python environment
# if: runner.os == 'Linux' || runner.os == 'macOS'
# uses: actions/cache@v3
# with:
# path: ~/.virtualenvs
# key: ${{ runner.os }}-python-env-${{ hashFiles('**/DESCRIPTION') }}
# restore-keys: |
# ${{ runner.os }}-python-env-
# - name: Cache Python environment (Windows)
# if: runner.os == 'Windows'
# uses: actions/cache@v3
# with:
# path: '%LOCALAPPDATA%/r-reticulate'
# key: ${{ runner.os }}-python-env-${{ hashFiles('**/DESCRIPTION') }}
# restore-keys: |
# ${{ runner.os }}-python-env-
- name: Install greta and dependencies
shell: Rscript {0}
run: |
library(greta)
install_greta_deps(timeout = 120)
- name: Verify Greta environment
shell: Rscript {0}
run: |
library(greta)
greta::greta_sitrep()
- uses: r-lib/actions/check-r-package@v2
with:
args: 'c("--no-manual", "--as-cran")'
error-on: '"error"'
check-dir: '"check"'
- name: Show testthat output
if: always()
run: |
## --------------------------------------------------------------------
find '${{ runner.temp }}/package' -name 'testthat.Rout*' -exec cat '{}' \; || true
shell: bash
- name: Session info
run: sessioninfo::session_info()