Skip to content

Update R-CMD-check.yaml #140

Update R-CMD-check.yaml

Update R-CMD-check.yaml #140

Workflow file for this run

on:
push:
branches: [main, master]
pull_request:
branches: [main, master]
name: R-CMD-check
permissions: read-all
jobs:
R-CMD-check:
runs-on: ${{ matrix.config.os }}
name: ${{ matrix.config.os }} (${{ matrix.config.r }})
strategy:
fail-fast: false
matrix:
config:
# - {os: macos-12, r: 'latest'}
- {os: windows-latest, r: 'release'}
- {os: ubuntu-latest, r: 'devel', http-user-agent: 'release'}
- {os: ubuntu-latest, r: 'release'}
- {os: ubuntu-latest, r: 'oldrel-1'}
env:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
R_KEEP_PKG_SOURCE: yes
steps:
- uses: actions/checkout@v4
- uses: r-lib/actions/setup-pandoc@v2
- uses: r-lib/actions/setup-r@v2
with:
r-version: ${{ matrix.config.r }}
http-user-agent: ${{ matrix.config.http-user-agent }}
use-public-rspm: true
# Ensure qpdf is installed on macOS
- name: Install qpdf (macOS only)
if: runner.os == 'macOS'
run: |
brew update
brew install qpdf || brew upgrade qpdf
# Ensure Homebrew is updated (macOS)
- name: Update Homebrew (macOS only)
if: runner.os == 'macOS'
run: brew doctor
# Cache R package library
- 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
- name: Install urlchecker
run: Rscript -e 'install.packages("urlchecker", repos = "https://cloud.r-project.org")'
- name: Check URLs
if: runner.os != 'Windows'
run: Rscript -e 'urlchecker::url_check(".")'
- name: Update URLs
if: runner.os != 'Windows'
run: Rscript -e 'urlchecker::url_update(".")'
# Build and check the R package
- uses: r-lib/actions/check-r-package@v2
with:
upload-snapshots: true
build_args: 'c("--no-manual", "--compact-vignettes=gs+qpdf")'