Jonathan Keane created ARROW-12826:
--------------------------------------

             Summary: [R] [CI] Add caching to revdepchecks
                 Key: ARROW-12826
                 URL: https://issues.apache.org/jira/browse/ARROW-12826
             Project: Apache Arrow
          Issue Type: Improvement
          Components: Continuous Integration, R
            Reporter: Jonathan Keane


With ARROW-12569 we added a (manual) reverse dependency check job. This runs 
fine (if slow) for a one-off run. It should be possible to cache between runs. 
There are a few issues with this currently:

* {revdepcheck} does not (yet) [support only running new 
runs|https://github.com/r-lib/revdepcheck/issues/94]
* The cache doesn't cache some of the longest running tasks (installing the 
reverse dependencies)
* If we cache the revdeps directory, we will need to re-add packages that 
should be re-checked.

We should investigate contributing to revdepcheck to resolve the run-only-new 
and possibly also add features for cacheing the installations (and only change 
when the crancache is invalidated / finds a new package?) 
https://github.com/HenrikBengtsson/revdepcheck.extras might also be helpful

For posterity, the following is ~what we would need to add to 
dev/tasks/r/github.linux.revdepcheck.yml
```
      - name: Cache crancache and revdeps directory
        uses: actions/cache@v2
        with:
          key: {{ "r-revdep-cache-${{ some-way-to-get-arrow-version }}" }}
          path: |
            arrow/r/revdep
            arrow/.crancache
```



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to