-
Notifications
You must be signed in to change notification settings - Fork 4
111 lines (99 loc) · 3.31 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
# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples
# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help
#
# Reproduce locally by running:
# ```r
# pak::pak(c("any::rcmdcheck", "."), dependencies = "Config/Needs/check")
# rcmdcheck::rcmdcheck()
# ```
on:
push:
branches: [main, master]
paths:
- 'data/**'
- 'R/**'
- 'inst/**'
- 'man/**'
- 'src/**'
- 'tests/**'
- 'vignettes/**'
- 'DESCRIPTION'
- 'NAMESPACE'
- 'LICENSE'
- '.Rbuildignore'
- '.github/workflows/R-CMD-check.yaml'
merge_group:
pull_request:
paths:
- 'data/**'
- 'R/**'
- 'inst/**'
- 'man/**'
- 'src/**'
- 'tests/**'
- 'vignettes/**'
- 'DESCRIPTION'
- 'NAMESPACE'
- 'LICENSE'
- '.Rbuildignore'
- '.github/workflows/R-CMD-check.yaml'
name: R-CMD-check
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
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: '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
- uses: r-lib/actions/setup-r-dependencies@v2
with:
extra-packages: any::rcmdcheck
needs: check
- name: Install hunspell and es_ES dictionary
run: |
if [[ $RUNNER_OS == 'Linux' ]]; then
sudo apt-get install -y hunspell hunspell-es
elif [[ $RUNNER_OS == 'macOS' ]]; then
brew install hunspell
curl -L -o "es-ES.aff" https://cgit.freedesktop.org/libreoffice/dictionaries/tree/es/es_ES.aff
curl -L -o "es-ES.dic" https://cgit.freedesktop.org/libreoffice/dictionaries/tree/es/es_ES.dic
mv es-ES.aff es-ES.dic ~/Library/Spelling/
elif [[ $RUNNER_OS == 'Windows' ]]; then
choco install hunspell.portable
curl -L -o "es-ES.aff" https://cgit.freedesktop.org/libreoffice/dictionaries/tree/es/es_ES.aff
curl -L -o "es-ES.dic" https://cgit.freedesktop.org/libreoffice/dictionaries/tree/es/es_ES.dic
move es-ES.aff "%LOCALAPPDATA%\hunspell\dictionaries"
move es-ES.dic "%LOCALAPPDATA%\hunspell\dictionaries"
fi
shell: bash
- uses: r-lib/actions/check-r-package@v2
id: rcmdcheck
with:
upload-snapshots: true
error-on: '"note"'
# fail-fast but only if rcmdcheck step fails
- name: Manual fail-fast
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
if: always() && steps.rcmdcheck.outcome == 'failure'
run: gh run cancel ${{ github.run_id }}