TRAVIS + TIC

KARTHIK RAM

@_inundata

100+ tools         R, C++, Node    large contributor community 

1

2

3

4

Data retrieval (APIs, data storage services, journals)
Data visualization (plot.ly)
Data sharing, validation (figshare, Zenodo, dat)
Reproducibility (curl, assertr, remake)

TRAVIS + TIC

KARTHIK RAM

@_inundata

Travis
travis_enable()
use_travis_deploy()
#Create deploy keys 

Tasks

Integrated
Continuously

Tic

Specify steps to be run at each stage. Using  a simple DSL.

Works with Travis CI, AppVeyor, or the CI tool of your choice

tic

→ Checks with steps need to run

→ Prepares everything for that step

→ Runs it at the right time

Tic

Specify steps to be run at each stage. Using  a simple DSL.

after_success
deploy
Stages
Preinstalled steps
step_hello_world: 
step_run_covr: 
step_install_ssh_key: make available a private SSH key (which has been added before to your project by travis::use_travis_deploy())
step_test_ssh
step_build_pkgdown
Preinstalled steps
step_push_deploy: deploy to GitHub with arguments:

path: which path to deploy
branch: which branch to deploy to
remote_url: the remote URL to push to, 
commit_message: adds a [ci skip] to avoid a loop
Configuring tic
Add tic.R
get_stage("after_success") %>%
  add_step(step_hello_world()) %>%
  add_step(step_run_covr())

get_stage("deploy") %>%
  add_step(step_install_ssh_keys()) %>%
  add_step(step_test_ssh())
Write your own steps!
github.com/ropenscilabs/tic#how-steps-are-run
blogdown
pkgdown

WIP!

ropenscilabs/travis
ropenscilabs/tic

inundata.org/talks/londonr