AMR/.gitlab-ci.yml

117 lines
5.1 KiB
YAML
Raw Normal View History

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-24 19:39:10 +02:00
stages:
2018-10-24 19:40:07 +02:00
- build
- deploy
2018-10-24 19:39:10 +02:00
2018-10-25 18:20:39 +02:00
R 3:
image: rocker/r-ver:3 # rocker/r-base
2018-10-24 19:40:54 +02:00
stage: build
2018-10-25 20:32:00 +02:00
allow_failure: false
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-10-24 21:14:11 +02:00
- R -e 'install.packages(c("devtools", "rlang"))'
2018-10-24 21:56:29 +02:00
- R -e 'devtools::install_deps(dependencies = c("Depends", "Imports", "Suggests"), repos = "https://cran.rstudio.com")'
2018-10-24 21:25:56 +02:00
- R -e 'print(as.data.frame(installed.packages(), row.names = FALSE)[, c("Package", "Version")])'
2018-10-23 22:55:21 +02:00
# remove vignettes folder and get VignetteBuilder field out of DESCRIPTION file
- rm -rf vignettes
- R -e 'd <- read.dcf("DESCRIPTION"); d[, colnames(d) == "VignetteBuilder"] <- NA; write.dcf(d, "DESCRIPTION")'
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-10-26 11:20:53 +02:00
- R -e 'covr::codecov(token = "50ffa0aa-fee0-4f8b-a11d-8c7edc6d32ca")'
2018-10-27 21:02:50 +02:00
artifacts:
paths:
- '*.Rcheck/*'
2018-10-28 10:23:01 +01:00
name: 'Latest Rcheck log'
2018-10-27 21:02:50 +02:00
expire_in: '1 month'
2018-10-28 11:15:31 +01:00
artifacts:
paths:
- '/*_*.zip'
- '/*_*.tar.gz'
name: 'Latest built package'
expires_in: '1 year'
2018-10-24 20:10:53 +02:00
R 3.4:
image: rocker/r-ver:3.4 # rocker/r-base
2018-10-24 19:40:54 +02:00
stage: build
2018-10-25 20:32:00 +02:00
allow_failure: true
2018-10-24 19:40:07 +02:00
script:
2018-10-24 20:10:53 +02:00
- apt-get update
# install dependencies for package
2018-10-24 20:38:51 +02:00
- apt-get install --yes --no-install-recommends libxml2-dev libssl-dev libcurl4-openssl-dev zlib1g-dev
2018-10-24 21:14:11 +02:00
- R -e 'install.packages("devtools")'
2018-10-24 20:10:53 +02:00
- R -e 'devtools::install_deps(dependencies = c("Depends", "Imports", "Suggests"))'
2018-10-24 21:25:56 +02:00
- R -e 'print(as.data.frame(installed.packages(), row.names = FALSE)[, c("Package", "Version")])'
2018-10-24 20:10:53 +02:00
# remove vignettes folder and get VignetteBuilder field out of DESCRIPTION file
- rm -rf vignettes
- R -e 'd <- read.dcf("DESCRIPTION"); d[, colnames(d) == "VignetteBuilder"] <- NA; write.dcf(d, "DESCRIPTION")'
- R CMD build . --no-build-vignettes --no-manual
- PKG_FILE_NAME=$(ls -1t *.tar.gz | head -n 1)
- R CMD check "${PKG_FILE_NAME}" --no-build-vignettes --no-manual --as-cran
R 3.5:
image: rocker/r-ver:3.5 # rocker/r-base
stage: build
2018-10-25 20:32:00 +02:00
allow_failure: true
2018-10-24 20:10:53 +02:00
script:
- apt-get update
# install dependencies for package
2018-10-24 20:38:51 +02:00
- apt-get install --yes --no-install-recommends libxml2-dev libssl-dev libcurl4-openssl-dev zlib1g-dev
2018-10-24 21:14:11 +02:00
- R -e 'install.packages("devtools")'
2018-10-24 19:39:10 +02:00
- R -e 'devtools::install_deps(dependencies = c("Depends", "Imports", "Suggests"))'
2018-10-24 21:25:56 +02:00
- R -e 'print(as.data.frame(installed.packages(), row.names = FALSE)[, c("Package", "Version")])'
2018-10-24 19:39:10 +02:00
# remove vignettes folder and get VignetteBuilder field out of DESCRIPTION file
- rm -rf vignettes
- R -e 'd <- read.dcf("DESCRIPTION"); d[, colnames(d) == "VignetteBuilder"] <- NA; write.dcf(d, "DESCRIPTION")'
- R CMD build . --no-build-vignettes --no-manual
- PKG_FILE_NAME=$(ls -1t *.tar.gz | head -n 1)
- R CMD check "${PKG_FILE_NAME}" --no-build-vignettes --no-manual --as-cran
2018-10-24 21:56:29 +02:00
2018-10-28 10:23:01 +01:00
#R latest:
# image: rocker/r-ver:latest # rocker/r-base
# stage: build
# allow_failure: true
# script:
# - apt-get update
2018-10-24 21:56:29 +02:00
# install dependencies for package
2018-10-28 10:23:01 +01:00
# - apt-get install --yes --no-install-recommends libxml2-dev libssl-dev libcurl4-openssl-dev zlib1g-dev
# - R -e 'install.packages("devtools")'
# - R -e 'devtools::install_deps(dependencies = c("Depends", "Imports", "Suggests"))'
# - R -e 'print(as.data.frame(installed.packages(), row.names = FALSE)[, c("Package", "Version")])'
2018-10-24 21:56:29 +02:00
# remove vignettes folder and get VignetteBuilder field out of DESCRIPTION file
2018-10-28 10:23:01 +01:00
# - rm -rf vignettes
# - R -e 'd <- read.dcf("DESCRIPTION"); d[, colnames(d) == "VignetteBuilder"] <- NA; write.dcf(d, "DESCRIPTION")'
# - R CMD build . --no-build-vignettes --no-manual
# - PKG_FILE_NAME=$(ls -1t *.tar.gz | head -n 1)
# - R CMD check "${PKG_FILE_NAME}" --no-build-vignettes --no-manual --as-cran
2018-10-24 21:56:29 +02:00
2018-10-28 10:23:01 +01:00
# R devel:
# image: rocker/r-ver:devel # rocker/r-base
# stage: build
# allow_failure: true
# script:
# - apt-get update
2018-10-24 21:56:29 +02:00
# install dependencies for package
2018-10-28 10:23:01 +01:00
#- apt-get install --yes --no-install-recommends libxml2-dev libssl-dev libcurl4-openssl-dev zlib1g-dev
#- R -e 'install.packages("devtools")'
# - R -e 'devtools::install_deps(dependencies = c("Depends", "Imports", "Suggests"))'
#- R -e 'print(as.data.frame(installed.packages(), row.names = FALSE)[, c("Package", "Version")])'
2018-10-24 21:56:29 +02:00
# remove vignettes folder and get VignetteBuilder field out of DESCRIPTION file
2018-10-28 10:23:01 +01:00
#- rm -rf vignettes
# - R -e 'd <- read.dcf("DESCRIPTION"); d[, colnames(d) == "VignetteBuilder"] <- NA; write.dcf(d, "DESCRIPTION")'
2018-10-24 19:40:36 +02:00
coverage_job:
2018-10-26 08:15:36 +02:00
# image: rocker/r-ver:3
2018-10-24 19:41:07 +02:00
stage: deploy
2018-10-24 19:40:07 +02:00
script:
2018-10-26 08:15:36 +02:00
- echo "future packaging part"