From: François Michonneau Date: Fri, 8 Jan 2021 16:18:15 +0000 (+0100) Subject: GitHub Actions: cache required R packages (#534) X-Git-Url: https://git.arvados.org/rnaseq-cwl-training.git/commitdiff_plain/2cd3c9c1a2499ac7b7c3b9a80995eb643b917960 GitHub Actions: cache required R packages (#534) --- diff --git a/.github/workflows/template.yml b/.github/workflows/template.yml index 7e86e02..84015e4 100644 --- a/.github/workflows/template.yml +++ b/.github/workflows/template.yml @@ -96,7 +96,7 @@ jobs: - name: Install needed packages if: steps.check-rmd.outputs.count != 0 run: | - install.packages(c('remotes', 'rprojroot', 'renv', 'desc', 'rmarkdown', 'knitr')) + install.packages(setdiff(c('remotes', 'rprojroot', 'renv', 'desc', 'rmarkdown', 'knitr'), rownames(installed.packages()))) shell: Rscript {0} - name: Query dependencies diff --git a/.github/workflows/website.yml b/.github/workflows/website.yml index b67e07e..59e3235 100644 --- a/.github/workflows/website.yml +++ b/.github/workflows/website.yml @@ -51,10 +51,18 @@ jobs: with: r-version: 'release' + - name: Cache R packages + if: steps.check-rmd.outputs.count != 0 + uses: actions/cache@v1 + with: + path: ${{ env.R_LIBS_USER }} + key: ${{ runner.os }}-${{ hashFiles('.github/R-version') }}-1-${{ hashFiles('.github/depends.Rds') }} + restore-keys: ${{ runner.os }}-${{ hashFiles('.github/R-version') }}-1- + - name: Install needed packages if: steps.check-rmd.outputs.count != 0 run: | - install.packages(c('remotes', 'rprojroot', 'renv', 'desc', 'rmarkdown', 'knitr')) + install.packages(setdiff(c('remotes', 'rprojroot', 'renv', 'desc', 'rmarkdown', 'knitr'), rownames(installed.packages())) shell: Rscript {0} - name: Query dependencies @@ -67,13 +75,6 @@ jobs: writeLines(sprintf("R-%i.%i", getRversion()$major, getRversion()$minor), ".github/R-version") shell: Rscript {0} - - name: Cache R packages - if: steps.check-rmd.outputs.count != 0 - uses: actions/cache@v1 - with: - path: ${{ env.R_LIBS_USER }} - key: ${{ runner.os }}-${{ hashFiles('.github/R-version') }}-1-${{ hashFiles('.github/depends.Rds') }} - restore-keys: ${{ runner.os }}-${{ hashFiles('.github/R-version') }}-1- - name: Install system dependencies for R packages if: steps.check-rmd.outputs.count != 0