-
Notifications
You must be signed in to change notification settings - Fork 12
134 lines (111 loc) · 3.64 KB
/
main_check.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.
#
# See https://github.com/r-lib/actions/tree/master/examples#readme for
# additional example workflows available for the R community.
name: R-CMD-check
on:
pull_request:
types: opened
branches: [ "main" ]
permissions:
contents: read
jobs:
R-CMD-check:
env:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
runs-on: ${{ matrix.config.os }}
name: ${{ matrix.config.os }} (${{ matrix.config.r }})
strategy:
fail-fast: false
matrix:
config: # matrix of system runners to run workflow on
- {os: macOS-latest, r: 'release'}
- {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'}
steps:
- name: Checkout repo for workflow access
uses: actions/checkout@v4
- name: Setup pandoc
uses: r-lib/actions/setup-pandoc@v2
- name: Set up R environment
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
- name: Set up dependencies (general)
uses: r-lib/actions/setup-r-dependencies@v2
env:
_R_CHECK_FORCE_SUGGESTS: false
_R_CHECK_RD_XREFS: false
with:
dependencies: '"hard"' # do not use suggested dependencies
install-pandoc: false
extra-packages: |
any::rcmdcheck
any::testthat
any::rlang
any::R.utils
any::knitr
any::rmarkdown
any::qs
any::sp
any::stars
any::raster
any::sf
any::scattermore
any::exactextractr
any::RTriangle
any::geometry
any::qs
any::future.apply
any::Biobase
any::chihaya
any::DelayedArray
any::DelayedMatrixStats
any::HDF5Array
any::plotly
any::rgl
any::rhdf5
any::S4Vectors
any::ScaledMatrix
any::XML
any::Seurat
any::SeuratObject
any::SingleCellExperiment
any::SpatialExperiment
any::STexampleData
any::SummarizedExperiment
github::drieslab/GiottoData
- uses: actions/setup-python@v5
with:
python-version: "3.10"
- name: setup giotto_env
shell: Rscript {0}
run: |
if (!GiottoClass::checkGiottoEnvironment()) {
GiottoClass::installGiottoEnvironment()
}
reticulate::conda_install(
envname = 'giotto_env',
packages = 'scanpy',
pip = TRUE
)
path_to_python <- GiottoClass::set_giotto_python_path()
writeLines(sprintf("RETICULATE_PYTHON=%s", path_to_python),
Sys.getenv("GITHUB_ENV"))
- name: Run R CMD check
uses: r-lib/actions/check-r-package@v2
with:
upload-snapshots: true
error-on: '"error"' # workflow errors on error only, can change to include warnings
# show testthat output for ease of access
- name: Show testthat output
if: always()
run: find check -name 'testthat.Rout*' -exec cat '{}' \; || true
shell: bash