{"action":"created","issue":{"url":"https://api.github.com/repos/craigcitro/r-travis/issues/154","labels_url":"https://api.github.com/repos/craigcitro/r-travis/issues/154/labels{/name}","comments_url":"https://api.github.com/repos/craigcitro/r-travis/issues/154/comments","events_url":"https://api.github.com/repos/craigcitro/r-travis/issues/154/events","html_url":"https://github.com/craigcitro/r-travis/issues/154","id":69953035,"number":154,"title":"Native R support in Travis and containers","user":{"login":"craigcitro","id":468559,"avatar_url":"https://avatars.githubusercontent.com/u/468559?v=3","gravatar_id":"","url":"https://api.github.com/users/craigcitro","html_url":"https://github.com/craigcitro","followers_url":"https://api.github.com/users/craigcitro/followers","following_url":"https://api.github.com/users/craigcitro/following{/other_user}","gists_url":"https://api.github.com/users/craigcitro/gists{/gist_id}","starred_url":"https://api.github.com/users/craigcitro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/craigcitro/subscriptions","organizations_url":"https://api.github.com/users/craigcitro/orgs","repos_url":"https://api.github.com/users/craigcitro/repos","events_url":"https://api.github.com/users/craigcitro/events{/privacy}","received_events_url":"https://api.github.com/users/craigcitro/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":13,"created_at":"2015-04-21T21:10:45Z","updated_at":"2015-09-22T11:33:56Z","closed_at":null,"body":"hi all -- opening a discussion ticket, hoping folks will pipe in.\r\n\r\n@hadley @eddelbuettel @jimhester @cbarraford -- cc away if you know other interested folks.\r\n\r\ncurrently, we're all hitting some pain because the native R support in travis makes use of `sudo`, which means we can't use their container-based infrastructure.\r\n\r\n## Problem\r\n\r\nWe need to install a number of prereqs (notably R and LaTeX), which takes time. On top of that, we'd like to save as much time as possible installing user packages, which we do by using marutter's PPA. All of these require `sudo`; we could (hopefully?) move the first two into the pre-container step, but the third is still a real problem.\r\n\r\nA second constraint is that we want to support multiple R versions (including R-devel).\r\n\r\n## Option 1: Use our own containers\r\n\r\nI think this is what we all want, but Travis doesn't yet support this. So we wait.\r\n\r\n## Option 2: Build our own image\r\n\r\nHere we'd add our own Chef cookbook to [travis-ci/travis-cookbooks](https://github.com/travis-ci/travis-cookbooks) that installed R and LaTeX, along with whitelisting a large number of packages from the marutter PPA for `sudo`-less install. Then we'd fall back to source installs for non-whitelisted binary packages, and be in OK shape.\r\n\r\nOur biggest constraint here is that we don't have any feedback from the Travis folks about whether or not they'll actually accept a PR with a new cookbook.\r\n\r\n## Option 3: Whitelist a large number of packages\r\n\r\nWe could try adding a large number of R-related packages to their apt whitelist for `sudo`-less install. @jimhester seems to be starting down this road?\r\n\r\n------------------\r\n\r\nother thoughts? comments?\r\n"},"comment":{"url":"https://api.github.com/repos/craigcitro/r-travis/issues/comments/142260701","html_url":"https://github.com/craigcitro/r-travis/issues/154#issuecomment-142260701","issue_url":"https://api.github.com/repos/craigcitro/r-travis/issues/154","id":142260701,"user":{"login":"eddelbuettel","id":673121,"avatar_url":"https://avatars.githubusercontent.com/u/673121?v=3","gravatar_id":"","url":"https://api.github.com/users/eddelbuettel","html_url":"https://github.com/eddelbuettel","followers_url":"https://api.github.com/users/eddelbuettel/followers","following_url":"https://api.github.com/users/eddelbuettel/following{/other_user}","gists_url":"https://api.github.com/users/eddelbuettel/gists{/gist_id}","starred_url":"https://api.github.com/users/eddelbuettel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/eddelbuettel/subscriptions","organizations_url":"https://api.github.com/users/eddelbuettel/orgs","repos_url":"https://api.github.com/users/eddelbuettel/repos","events_url":"https://api.github.com/users/eddelbuettel/events{/privacy}","received_events_url":"https://api.github.com/users/eddelbuettel/received_events","type":"User","site_admin":false},"created_at":"2015-09-22T11:33:56Z","updated_at":"2015-09-22T11:33:56Z","body":"Looks interesting, thanks. \r\n\r\nIt does the caching so subsequent runs on unchanged dependencies are fast?\r\n\r\nNow I need a version without `devtools` :)   Any chance you could whitelist [littler](http://dirk.eddelbuettel.com/code/littler.html) which is also in Debian/Ubuntu, on the CRAN mirrors as backport, and heavily used in our [Rocker containers](https://github.com/rocker-org/rocker) for R with Docker? "}}