AMR/.gitlab-ci.yml

88 lines
3.4 KiB
YAML
Raw Normal View History

2018-12-30 08:40:40 +01:00
# ==================================================================== #
# TITLE #
# Antimicrobial Resistance (AMR) Analysis #
# #
2019-01-02 23:24:07 +01:00
# SOURCE #
# https://gitlab.com/msberends/AMR #
2018-12-30 08:40:40 +01:00
# #
# LICENCE #
2019-01-02 23:24:07 +01:00
# (c) 2019 Berends MS (m.s.berends@umcg.nl), Luz CF (c.f.luz@umcg.nl) #
2018-12-30 08:40:40 +01:00
# #
2019-01-02 23:24:07 +01:00
# This R package is free software; you can freely use and distribute #
# it for both personal and commercial purposes under the terms of the #
# GNU General Public License version 2.0 (GNU GPL-2), as published by #
# the Free Software Foundation. #
# #
# This R package was created for academic research and was publicly #
# released in the hope that it will be useful, but it comes WITHOUT #
# ANY WARRANTY OR LIABILITY. #
# Visit our website for more info: https://msberends.gitab.io/AMR. #
2018-12-30 08:40:40 +01:00
# ==================================================================== #
2018-12-30 12:00:53 +01:00
# from https://stackoverflow.com/questions/51866926
# and https://github.com/jangorecki/r.gitlab.ci
# and https://docs.gitlab.com/ce/ci/yaml/README.html
# how the Docker+R images work: https://hub.docker.com/r/rocker/r-ver/
2018-12-30 07:44:11 +01:00
stages:
2018-12-30 12:00:53 +01:00
- build
2019-01-02 23:24:07 +01:00
- test
2018-12-30 07:44:11 +01:00
- deploy
2018-12-30 12:00:53 +01:00
image: debian:buster-slim
2018-12-30 07:44:11 +01:00
2018-12-30 12:00:53 +01:00
before_script:
- apt-get update
# install dependencies for package
- apt-get -y install libxml2-dev libssl-dev libcurl4-openssl-dev zlib1g-dev pandoc r-base
- Rscript -e 'install.packages(c("devtools", "rlang"), repos = "https://cran.rstudio.com")'
- Rscript -e 'devtools::install_dev_deps(repos = "https://cran.rstudio.com")'
2018-12-30 08:40:40 +01:00
2019-01-02 23:24:07 +01:00
cache:
key: "$CI_COMMIT_REF_SLUG"
paths:
2019-01-04 09:49:42 +01:00
- /usr/local/lib/R/*
- /usr/lib/R/*
2019-01-02 23:24:07 +01:00
2018-12-30 12:00:53 +01:00
R 3:
stage: build
allow_failure: true
2018-12-30 07:44:11 +01:00
script:
2018-12-30 12:00:53 +01:00
# remove vignettes folder and get VignetteBuilder field out of DESCRIPTION file
- rm -rf vignettes
- Rscript -e 'd <- read.dcf("DESCRIPTION"); d[, colnames(d) == "VignetteBuilder"] <- NA; write.dcf(d, "DESCRIPTION")'
# build package
- 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
2019-01-04 09:49:42 +01:00
- Rscript -e 'print(.libPaths())'
2018-12-30 12:00:53 +01:00
artifacts:
paths:
2019-01-02 23:24:07 +01:00
- '*.Rcheck/*'
2018-12-30 12:00:53 +01:00
name: 'Rcheck log'
expire_in: '1 month'
2018-12-24 12:12:05 +01:00
2019-01-02 23:24:07 +01:00
coverage:
stage: test
allow_failure: true
when: on_success
only:
- master
script:
- apt-get install --yes git
- Rscript -e 'cc <- covr::package_coverage(); covr::codecov(coverage = cc, token = "50ffa0aa-fee0-4f8b-a11d-8c7edc6d32ca"); cat("Code coverage:", covr::percent_coverage(cc))'
coverage: '/Code coverage: \d+\.\d+/'
2018-12-24 13:21:47 +01:00
pages:
2018-12-30 07:44:11 +01:00
stage: deploy
2019-01-02 23:24:07 +01:00
when: always
only:
- master
2018-12-24 12:12:05 +01:00
script:
2018-12-30 12:00:53 +01:00
- Rscript -e "install.packages('pkgdown', repos = 'https://cran.rstudio.com')"
- Rscript -e "devtools::install(build = TRUE, upgrade = FALSE)"
- R -e "pkgdown::build_site(examples = FALSE, override = list(destination = 'public'))"
2018-12-24 12:12:05 +01:00
artifacts:
paths:
- public