Skip to content

Commit

Permalink
Avoid duplicate caching (#87)
Browse files Browse the repository at this point in the history
* Avoid duplicate caching

`r-lib/actions/setup-r-dependencies` already takes care of caching
See also carpentries#591

* Further simplify the `R-CMD-check` action

* Upgrade `actions/checkout` to `v4`
  • Loading branch information
milanmlft authored Jun 6, 2024
1 parent 87920a1 commit 9cf79c1
Show file tree
Hide file tree
Showing 5 changed files with 8 additions and 74 deletions.
52 changes: 2 additions & 50 deletions .github/workflows/R-CMD-check.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -28,41 +28,21 @@ jobs:
matrix:
config:
## Run CI only on ubuntu-latest as this is the os used to build lessons
- {os: ubuntu-latest, cache: '~/.local/share/renv', r: 'release', cov: 'true'}
- {os: ubuntu-latest, r: 'release', cov: 'true'}

env:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
R_KEEP_PKG_SOURCE: yes
R_REMOTES_NO_ERRORS_FROM_WARNINGS: true
RENV_PATHS_ROOT: ${{ matrix.config.cache }}

steps:
- name: Record Linux Version
if: runner.os == 'Linux'
run: |
echo "OS_VERSION=`lsb_release -sr`" >> $GITHUB_ENV
mkdir -p "${{ runner.temp }}/sandbox/"
echo "RENV_PATHS_SANDBOX=${{ runner.temp }}/sandbox/" >> $GITHUB_ENV
- name: "Windows: prevent autocrlf"
if: runner.os == 'Windows'
run: git config --global core.autocrlf false
shell: bash

- uses: actions/checkout@v3
- uses: actions/checkout@v4

- uses: r-lib/actions/setup-pandoc@v2

- name: "Set up Chrome" # for PDF rendering
uses: browser-actions/[email protected]

- name: "Windows: setup TMPDIR"
if: runner.os == 'Windows'
run: |
git config --global core.autocrlf true # reset setting to prevent errors downstream
echo "TMPDIR=${{ runner.temp }}" >> $GITHUB_ENV
shell: bash

- name: "Setup R"
uses: r-lib/actions/setup-r@v2
with:
Expand All @@ -76,25 +56,6 @@ jobs:
extra-packages: any::rcmdcheck
needs: check

- name: "Restore {renv} cache"
if: runner.os != 'Windows'
uses: actions/cache@v3
with:
path: ${{ env.RENV_PATHS_ROOT }}
key: ${{ runner.os }}-${{ env.OS_VERSION }}-renv-${{ runner.r }}-${{ hashFiles('.github/workflows/R-CMD-check.yaml') }}
restore-keys: |
${{ runner.os }}-${{ env.OS_VERSION }}-renv-${{ runner.r }}-
- name: "Prime {renv} Cache"
if: runner.os != 'Windows'
run: |
renv::settings$snapshot.type("explicit")
renv::init(bioconductor = TRUE)
system('sudo rm -rf renv.lock renv .Rprofile')
system('git clean -fd -e .github')
system('git restore .')
shell: Rscript {0}

- name: "Session info"
run: |
options(width = 100)
Expand All @@ -104,14 +65,5 @@ jobs:

- name: "Check"
uses: r-lib/actions/check-r-package@v2
if: runner.os != 'Windows'
with:
upload-snapshots: true

- name: "Check"
uses: r-lib/actions/check-r-package@v2
if: runner.os == 'Windows'
env:
RENV_PATHS_ROOT: ~
with:
upload-snapshots: true
2 changes: 1 addition & 1 deletion .github/workflows/pkgdown.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ jobs:
env:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- uses: r-lib/actions/setup-pandoc@v2

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/pr-commands.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ jobs:
env:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- uses: r-lib/actions/pr-fetch@v2
with:
Expand Down
20 changes: 1 addition & 19 deletions .github/workflows/test-coverage.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,10 @@ jobs:
runs-on: ubuntu-latest
env:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
RENV_PATHS_ROOT: ~/.local/share/renv
OS_VERSION: 1

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- uses: r-lib/actions/setup-r@v2
with:
Expand Down Expand Up @@ -60,23 +59,6 @@ jobs:
extra-packages: any::covr
needs: coverage

- name: Restore {renv} cache
uses: actions/cache@v3
with:
path: ${{ env.RENV_PATHS_ROOT }}
key: ${{ runner.os }}-${{ env.OS_VERSION }}-renv-${{ runner.r }}-${{ hashFiles('.github/workflows/R-CMD-check.yaml') }}
restore-keys: |
${{ runner.os }}-${{ env.OS_VERSION }}-renv-${{ runner.r }}-
- name: Prime {renv} Cache
run: |
renv::settings$snapshot.type("explicit")
renv::init(bioconductor = TRUE)
system('rm -rf renv .Rprofile')
system('git clean -fd -e .github')
system('git restore .')
shell: Rscript {0}

- name: Test coverage
run: |
covr::codecov(
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/update-dots.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ name: Render Dotfiles

on:
push:
paths:
paths:
- vignettes/articles/img/*dot
- .github/workflows/update-docs.yaml

Expand All @@ -11,8 +11,8 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2.5.0
- uses: actions/checkout@v4

- name: Setup Graphviz
uses: ts-graphviz/setup-graphviz@v1

Expand Down

0 comments on commit 9cf79c1

Please sign in to comment.