You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Drat is a useful little package, for, inter-alia, using
github gh-pages as an R repository
Travis is a hosted continuous integration service.
It is integrated with gitHub and offers first class support for a number of languages, but importantly, R.
This package illustrates how to automatically update a drat github repository, on a successful travis build.
Get a github API token to generate
a new Personal access token. You might need to re-enter your password. Just select repo, or
if your repository is public, you can select public_repo instead. GitHub will create the token and
give you a chance to copy it down.
Travis will need to encrypt this token. The short story is:
where $MY_ACCESS_TOKEN is your access token. The --add env.global automatically adds the token to your .travis.yml file
Copy across deploy.sh and edit appropriately.
Add the line
after_success:
- test $TRAVIS_REPO_SLUG == "csgillespie/dratTravis" && test $TRAVIS_PULL_REQUEST == "false" && test $TRAVIS_BRANCH == "master" && bash deploy.sh
to your `.travis.yml` file. This means your `drat` repository is only updated:
- for successful builds
- if the commit is on the master you own, i.e. USERNAME/dratTRAVIS
- not for pull requests
- only on the master branch
TODO
The bash script is a bit hacky.
It should be possible to only update if a version is tagged. Travis provides a variable $TRAVIS_TAG, that is empty if the commit isn't a tag. But when tagging, $TRAVIS_BRANCH also changes to the tag name.