2018-10-23 14:59:36 +02:00
|
|
|
# from https://stackoverflow.com/questions/51866926
|
2018-10-23 19:49:31 +02:00
|
|
|
# and https://github.com/jangorecki/r.gitlab.ci
|
2018-10-24 21:56:29 +02:00
|
|
|
# and https://docs.gitlab.com/ce/ci/yaml/README.html
|
2018-10-24 19:39:10 +02:00
|
|
|
|
2018-10-24 21:56:29 +02:00
|
|
|
# how the Docker+R images work: https://hub.docker.com/r/rocker/r-ver/
|
2018-10-25 18:20:39 +02:00
|
|
|
R 3:
|
2018-10-31 13:42:35 +01:00
|
|
|
image: rocker/r-ver:3 # test on R v3.*.*
|
2018-12-10 10:13:40 +01:00
|
|
|
allow_failure: true
|
2018-10-24 19:40:07 +02:00
|
|
|
script:
|
2018-10-23 21:26:57 +02:00
|
|
|
- apt-get update
|
2018-10-23 22:55:21 +02:00
|
|
|
# install dependencies for package
|
2018-10-24 21:14:48 +02:00
|
|
|
- apt-get install --yes --no-install-recommends libxml2-dev libssl-dev libcurl4-openssl-dev zlib1g-dev
|
2018-11-30 12:05:59 +01:00
|
|
|
- Rscript -e 'install.packages(c("devtools", "rlang"))'
|
2018-12-10 15:14:29 +01:00
|
|
|
- Rscript -e 'devtools::install_dev_deps(repos = "https://cran.rstudio.com")'
|
2018-10-23 22:55:21 +02:00
|
|
|
# remove vignettes folder and get VignetteBuilder field out of DESCRIPTION file
|
|
|
|
- rm -rf vignettes
|
2018-11-30 12:05:59 +01:00
|
|
|
- Rscript -e 'd <- read.dcf("DESCRIPTION"); d[, colnames(d) == "VignetteBuilder"] <- NA; write.dcf(d, "DESCRIPTION")'
|
2018-12-10 10:13:40 +01:00
|
|
|
# set environmental variable
|
|
|
|
- Rscript -e 'Sys.setenv(NOT_CRAN = "true")'
|
2018-11-30 12:05:59 +01:00
|
|
|
# build package
|
2018-10-23 23:17:53 +02:00
|
|
|
- R CMD build . --no-build-vignettes --no-manual
|
2018-10-23 14:53:42 +02:00
|
|
|
- PKG_FILE_NAME=$(ls -1t *.tar.gz | head -n 1)
|
2018-10-23 23:17:53 +02:00
|
|
|
- R CMD check "${PKG_FILE_NAME}" --no-build-vignettes --no-manual --as-cran
|
2018-10-26 08:24:32 +02:00
|
|
|
# code coverage
|
2018-10-26 10:26:30 +02:00
|
|
|
- apt-get install --yes git
|
2018-12-10 10:13:40 +01:00
|
|
|
- Rscript -e 'cc <- covr::package_coverage(); covr::codecov(coverage = cc, token = "50ffa0aa-fee0-4f8b-a11d-8c7edc6d32ca"); cat("Code coverage:", covr::percent_coverage(cc))'
|
2018-10-31 12:10:49 +01:00
|
|
|
coverage: '/Code coverage: \d+\.\d+/'
|
2018-10-27 21:02:50 +02:00
|
|
|
artifacts:
|
|
|
|
paths:
|
2018-10-31 13:42:35 +01:00
|
|
|
- '*.Rcheck/*.log'
|
|
|
|
- '*.Rcheck/*.out'
|
|
|
|
- '*.Rcheck/*.fail'
|
|
|
|
- '*.Rcheck/*.Rout'
|
2018-10-31 12:10:49 +01:00
|
|
|
name: 'Rcheck log'
|
2018-10-27 21:02:50 +02:00
|
|
|
expire_in: '1 month'
|