-
Notifications
You must be signed in to change notification settings - Fork 77
143 lines (118 loc) · 4.29 KB
/
R-CMD-check.yaml
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
132
133
134
135
136
137
138
139
140
141
142
143
# Workflow derived from https://github.com/r-lib/actions/tree/master/examples
# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help
# R cmd check for singleCellTK
on:
push:
branches: [master, devel]
pull_request:
branches: [master, devel]
name: R-CMD-check
jobs:
R-CMD-check:
runs-on: ${{ matrix.config.os }}
name: ${{ matrix.config.os }} (${{ matrix.config.r }})
strategy:
fail-fast: false
matrix:
config:
- {os: macOS-latest, r: 'release'}
- {os: windows-latest, r: 'release'}
- {os: ubuntu-latest, r: 'release'}
env:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
R_KEEP_PKG_SOURCE: yes
steps:
- uses: actions/checkout@v3
- uses: r-lib/actions/setup-pandoc@v2
- name: Setup Python
uses: actions/setup-python@v2
with:
python-version: '3.8'
- name: Pip Installer
uses: BSFishy/pip-action@v1
with:
packages: |
bbknn
pandas
scanorama
scipy
numpy
astroid
six
scrublet
scanpy
- name: isPythonInstalled
if: always()
run: |
python3 --version
which python
shell: bash
- uses: r-lib/actions/setup-r@v2
with:
r-version: ${{ matrix.config.r }}
http-user-agent: ${{ matrix.config.http-user-agent }}
use-public-rspm: false
- name: Install fftw3 on Linux
if: runner.os == 'Linux'
run: sudo apt-get install libfftw3-dev
- name: Install fftw3 on macOS
if: runner.os == 'macOS'
run: brew install fftw
- name: Manual Install
run: |
install.packages("BiocManager")
BiocManager::install("ggtree")
install.packages("remotes")
install.packages("magick")
remotes::install_version("assertive.properties", version = "0.0.5", repos = "http://cran.us.r-project.org", upgrade = "never")
remotes::install_version("assertive.types", version = "0.0.3", repos = "http://cran.us.r-project.org", upgrade = "never")
remotes::install_version("multipanelfigure", version = "2.1.2", repos = "http://cran.us.r-project.org", upgrade = "never")
remotes::install_version("Matrix", version = "1.6.4", repos = "http://cran.us.r-project.org", upgrade = "never")
BiocManager::install("celda")
shell: Rscript {0}
- uses: r-lib/actions/setup-r-dependencies@v2
with:
cache: false
extra-packages: |
any::rcmdcheck
needs: check
- name: Install XQuartz on macOS
if: runner.os == 'macOS'
run: brew install xquartz --cask
- name: Install Old Seurat
run: |
remotes::install_version("Matrix", version = "1.6.4", repos = "http://cran.us.r-project.org", upgrade = "never")
remotes::install_version("SeuratObject", version = "4.1.4", repos = "http://cran.us.r-project.org", upgrade = "never")
remotes::install_version("Seurat", version = "4.4.0", repos = "http://cran.us.r-project.org", upgrade = "never")
shell: Rscript {0}
- name: Check
env:
_R_CHECK_CRAN_INCOMING_: false
run: |
options(crayon.enabled = TRUE)
if (Sys.info()[1] == "Windows") {
reticulate::use_python(system('where python', intern=TRUE)[1])
} else {
reticulate::use_python(system('which python', intern=TRUE))
}
reticulate::py_config()
rcmdcheck::rcmdcheck(args = c("--no-manual", "--as-cran"), error_on = "warning", check_dir = "check")
shell: Rscript {0}
- name: Show testthat output
if: always()
run: find check -name 'testthat.Rout*' -exec cat '{}' \; || true
shell: bash
- name: Upload check results
if: failure()
uses: actions/upload-artifact@main
with:
name: ${{ runner.os }}-r${{ matrix.config.r }}-results
path: check
- name: Run codecov
run: |
install.packages("covr")
library(covr)
codecov()
shell: Rscript {0}
- name: Upload codecov
uses: codecov/codecov-action@v2.1.0