Skip to content

updates to workflow actions #39

updates to workflow actions

updates to workflow actions #39

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 }}
CUDA_VISIBLE_DEVICES: 'FALSE'
RETICULATE_AUTOCONFIGURE: 'FALSE'
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
- 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 }}-
- 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 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: |
install.packages("greta", repos = c("https://greta-dev.r-universe.dev", "https://cloud.r-project.org"))
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", "--no-vignettes")'
error-on: '"error"'
# check-dir: '"check"'
- name: Session info
run: sessioninfo::session_info()