@@ -11,6 +11,12 @@ name: Unit tests
1111 pull_request :
1212 branches :
1313 - master
14+ workflow_dispatch :
15+ inputs :
16+ tarball_url :
17+ description : ' CmdStan tarball URL to test with.'
18+ required : false
19+ default : ' '
1420
1521jobs :
1622 R-CMD-check :
@@ -23,19 +29,21 @@ jobs:
2329 fail-fast : false
2430 matrix :
2531 config :
26- - {os: macOS-latest, r: 'devel', rtools: '', opencl: true}
27- - {os: macOS-latest, r: 'release', rtools: '', opencl: true}
28- - {os: windows-latest, r: 'devel', rtools: '44' }
29- - {os: windows-latest, r: 'release', rtools: '44' }
30- - {os: windows-latest, r: 'oldrel', rtools: '43' }
31- - {os: ubuntu-latest, r: 'devel', rtools: '', opencl: true}
32- - {os: ubuntu-latest, r: 'release', rtools: '', opencl: true}
33- - {os: ubuntu-latest, r: 'oldrel', rtools: '', opencl: true}
32+ - {os: macOS-latest, r: 'devel', opencl: true}
33+ - {os: macOS-latest, r: 'release', opencl: true}
34+ - {os: windows-latest, r: 'devel' }
35+ - {os: windows-latest, r: 'release'}
36+ - {os: windows-latest, r: 'oldrel'}
37+ - {os: ubuntu-latest, r: 'devel', opencl: true}
38+ - {os: ubuntu-latest, r: 'release', opencl: true}
39+ - {os: ubuntu-latest, r: 'oldrel', opencl: true}
3440 env :
3541 R_REMOTES_NO_ERRORS_FROM_WARNINGS : true
3642 GITHUB_PAT : ${{ secrets.GITHUB_TOKEN }}
3743 NOT_CRAN : true
3844 CMDSTANR_OPENCL_TESTS : ${{ matrix.config.opencl }}
45+ CMDSTAN_TEST_TARBALL_URL : ${{ github.event.inputs.tarball_url }}
46+ PKG_SYSREQS_DB_UPDATE_TIMEOUT : 30s
3947
4048 steps :
4149 - name : cmdstan env vars
@@ -48,16 +56,21 @@ jobs:
4856 token : ${{ secrets.GITHUB_TOKEN }}
4957 if : " !startsWith(github.ref, 'refs/tags/') && github.ref != 'refs/heads/master'"
5058
51- - uses : actions/checkout@v4
59+ - uses : actions/checkout@v6
5260
53- - uses : r-lib/actions/setup-r@v2.11.2
61+ - uses : r-lib/actions/setup-r@v2
5462 with :
5563 r-version : ${{ matrix.config.r }}
56- rtools-version : ${{ matrix.config.rtools }}
5764
58- - uses : r-lib/actions/setup-pandoc@v2.11.2
65+ - name : Install R Package Build Dependencies on MacOS
66+ if : ${{ runner.os == 'macOS' }}
67+ uses : r-hub/actions/setup-r-sysreqs@v1
68+ with :
69+ type : ' minimal'
70+
71+ - uses : r-lib/actions/setup-pandoc@v2
5972
60- - uses : r-lib/actions/setup-r-dependencies@v2.11.2
73+ - uses : r-lib/actions/setup-r-dependencies@v2
6174 with :
6275 cache : " always"
6376 extra-packages : any::rcmdcheck, local::.
8093 - name : Install cmdstan
8194 run : |
8295 cmdstanr::check_cmdstan_toolchain(fix = TRUE)
83- cmdstanr::install_cmdstan(cores = 2)
96+ tarball_url <- Sys.getenv("CMDSTAN_TEST_TARBALL_URL")
97+ if (nzchar(tarball_url)) {
98+ cmdstanr::install_cmdstan(
99+ cores = 2,
100+ overwrite = TRUE,
101+ release_url = tarball_url
102+ )
103+ } else {
104+ cmdstanr::install_cmdstan(cores = 2)
105+ }
84106 shell : Rscript {0}
85107
86108 - name : Session info
90112 sessioninfo::session_info(pkgs, include_base = TRUE)
91113 shell : Rscript {0}
92114
93- - uses : r-lib/actions/check-r-package@v2.11.2
115+ - uses : r-lib/actions/check-r-package@v2
94116 env :
95117 _R_CHECK_CRAN_INCOMING_ : false
96118
@@ -101,7 +123,7 @@ jobs:
101123
102124 - name : Upload check results
103125 if : failure()
104- uses : actions/upload-artifact@v4
126+ uses : actions/upload-artifact@v6
105127 with :
106128 name : ${{ runner.os }}-r${{ matrix.config.r }}-results
107129 path : check
0 commit comments