Skip to content

Commit 29c5e0b

Browse files
authored
Refactor R-CMD-check workflow configuration
Updated R-CMD-check workflow to use new environment variables and streamlined steps.
1 parent 618d591 commit 29c5e0b

1 file changed

Lines changed: 18 additions & 56 deletions

File tree

.github/workflows/R-CMD-check.yaml

Lines changed: 18 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
# https://github.com/r-lib/actions/tree/v2/examples
21
on:
32
push:
43
branches: [master, devel]
@@ -10,88 +9,51 @@ name: R-CMD-check
109
jobs:
1110
R-CMD-check:
1211
runs-on: ${{ matrix.config.os }}
13-
name: ${{ matrix.config.os }} (${{ matrix.config.r }})
12+
name: ${{ matrix.config.os }} (${{ matrix.config.rRequested }})
1413

1514
strategy:
1615
fail-fast: false
1716
matrix:
1817
config:
19-
- {os: windows-latest, r: 'devel', rgl_null: 'true'}
20-
- {os: windows-latest, r: 'release', rgl_null: 'true'}
21-
- {os: macos-latest, r: 'release', rgl_null: 'true'}
22-
- {os: ubuntu-latest, r: 'release'}
23-
- {os: ubuntu-latest, r: 'devel'}
18+
- {os: windows-latest, r: 'devel', rgl_null: 'true'}
19+
- {os: windows-latest, r: 'release', rgl_null: 'true'}
20+
- {os: macos-latest, r: 'release', rgl_null: 'true'}
21+
- {os: ubuntu-latest, r: 'release'}
22+
- {os: ubuntu-latest, r: 'devel'}
2423

2524
env:
26-
R_REMOTES_NO_ERRORS_FROM_WARNINGS: true
27-
_R_CHECK_FORCE_SUGGESTS_: false
25+
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
26+
R_KEEP_PKG_SOURCE: yes
2827
RGL_USE_NULL: ${{ matrix.config.rgl_null || 'false' }}
29-
NOT_CRAN: true
30-
OMP_NUM_THREADS: 1
3128

3229
steps:
3330
- uses: actions/checkout@v4
3431

32+
- uses: r-lib/actions/setup-pandoc@v2
33+
3534
- uses: r-lib/actions/setup-r@v2
3635
with:
3736
r-version: ${{ matrix.config.r }}
3837
use-public-rspm: true
3938

40-
- uses: r-lib/actions/setup-pandoc@v2
41-
42-
- name: Install macOS system dependencies
43-
if: runner.os == 'macOS'
44-
run: brew install gdal proj
45-
46-
- name: Install Linux system dependencies
47-
if: runner.os == 'Linux'
48-
run: |
49-
sudo add-apt-repository -y ppa:ubuntugis/ubuntugis-unstable
50-
sudo apt-get update -y
51-
sudo apt-get install -y \
52-
libgdal-dev \
53-
libgeos++-dev \
54-
libudunits2-dev \
55-
libproj-dev \
56-
libx11-dev \
57-
libgl1-mesa-dev \
58-
libglu1-mesa-dev \
59-
libfreetype6-dev \
60-
libnode-dev \
61-
libxt-dev \
62-
libfftw3-dev
63-
6439
- uses: r-lib/actions/setup-r-dependencies@v2
6540
with:
6641
extra-packages: |
6742
any::rcmdcheck
6843
any::covr
6944
bioc::EBImage
45+
# This is the 'Modern' way to fix your GDAL error:
46+
# It forces sf/terra to compile from source against the system GDAL
47+
install-reinstall: sf terra
7048

7149
- name: Check
72-
env:
73-
_R_CHECK_CRAN_INCOMING_REMOTE_: false
74-
run: |
75-
rcmdcheck::rcmdcheck(
76-
args = c("--no-manual", "--as-cran"),
77-
error_on = "warning",
78-
check_dir = "check"
79-
)
80-
shell: Rscript {0}
81-
82-
- name: Show testthat output
83-
if: always()
84-
run: find check -name 'testthat.Rout*' -exec cat '{}' \; || true
85-
shell: bash
86-
87-
- name: Upload check results
88-
if: failure()
89-
uses: actions/upload-artifact@v4
50+
uses: r-lib/actions/check-r-package@v2
9051
with:
91-
name: ${{ runner.os }}-r${{ matrix.config.r }}-results
92-
path: check
52+
args: 'c("--no-manual", "--as-cran")'
53+
error-on: '"warning"'
54+
check-dir: '"check"'
9355

9456
- name: Test coverage
95-
if: matrix.config.os == 'ubuntu-latest' && matrix.config.r == 'release'
57+
if: success() && matrix.config.os == 'ubuntu-latest' && matrix.config.r == 'release'
9658
run: covr::codecov(type = "all")
9759
shell: Rscript {0}

0 commit comments

Comments
 (0)