r-ci: Continuous Integration for R at Travis, GitHub, Azure, ...
This is the successor / continuation of the r-travis repository, which is itself a maintained fork of the (now deprecated) original r-travis repository by Craig Citro et al. I was an early contributor to this project, and quite like its design and features -- so I have been keeping it around, maintained and extended it. It is my 'go-to' CI setup for a few dozen repositories affecting a fairly decent number of users.
A minimal example of use with Travis follows:
language: c sudo: required dist: focal before_install: - curl -OLs https://eddelbuettel.github.io/r-ci/run.sh && chmod 0755 run.sh - ./run.sh bootstrap install: - ./run.sh install_deps script: - ./run.sh run_tests
This downloads the
run.sh script, uses it to bootstrap the test environment, then installs
install_deps and finally runs tests. For a realistic but real example see e.g.
this .travis.yml file of package
digest. For another example, see
package tidyCpp which shows how to use the
script with Travis CI as well as
package dang (featured in the
video mentioned above) Numerous variations are possible: running
'test matrices' across macOS and Linux, using BSPM for binaries (both of those are used by
digest, running with several
versions (as used by
We also use the same approach of downloading
run.sh and invoking it for the different steps in
with GitHub Actions (e.g. for
Azure Pipelines can be used (as was done by a test repo on Azure).
There are also other options of use with PPAs and more---for fullest details see the source of the
As of September 2022, we rely on r2u to supply a full set of
binaries for CRAN for use on Ubuntu LTS. You can use it via
without having to supply the
r-cran-* packages explicitly.
Dirk Eddelbuettel (for this maintained fork)
Craig Citro, Kirill Mueller, Dirk Eddelbuettel, ... (for the original r-travis)