# from https://stackoverflow.com/questions/51866926 # and https://github.com/jangorecki/r.gitlab.ci # how the images work: https://hub.docker.com/r/rocker/r-ver/ stages: - build - deploy R 3.3: image: rocker/r-ver:3.3 # rocker/r-base stage: build script: - apt-get update # install dependencies for package - apt-get install --yes --no-install-recommends libxml2-dev libssl-dev libcurl4-openssl-dev zlib1g-dev - R -e 'install.packages(c("devtools", "rlang"))' - R -e 'devtools::install_deps(dependencies = c("Depends", "Imports", "Suggests"))' - R -e 'print(as.data.frame(installed.packages(), row.names = FALSE)[, c("Package", "Version")])' # 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.4: image: rocker/r-ver:3.4 # rocker/r-base stage: build script: - apt-get update # install dependencies for package - 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")])' # 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 script: - apt-get update # install dependencies for package - 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")])' # 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 coverage_job: stage: deploy script: # update code coverage - apt-get install --yes git - R -e "covr::codecov(token = '50ffa0aa-fee0-4f8b-a11d-8c7edc6d32ca')" when: on_success