Skip to content

Check 📦

Check 📦 #54

Workflow file for this run

---
name: Check 📦
on:
pull_request:
types:
- opened
- synchronize
- reopened
- ready_for_review
branches:
- main
push:
branches:
- main
workflow_call:
inputs:
dep_path:
description: Path of the dependency file.
required: false
type: string
default: "dependencies.yml"
concurrency:
group: check-test-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
check-test:
name: ${{ vars.CI_IMAGE }}
runs-on: ubuntu-latest
container:
image: ${{ vars.CI_IMAGE }}
steps:
- name: Checkout project ⬇️
uses: actions/checkout@v4
- name: Normalize variables 📏
run: |
package_subdirectory_input="${{ inputs.dep_path }}"
echo "dep_path=${dep_path:-'dependencies.yml'}" >> $GITHUB_ENV
shell: bash
- name: Install package dependencies 📄
run: |
if (file.exists(${{ env.dep_path }})) {
repos <- yaml::yaml.load(readLines(${{ env.dep_path }}))$dependencies |>
sapply(function(x) x$repo)
if(repos |> length() > 0) {
repos |>
pak::pak(dependencies = TRUE, ask = FALSE, upgrade = FALSE)
}
}
shell: Rscript {0}
- name: Check 📦
run: |
options(crayon.enabled = TRUE)
devtools::check(error_on="error", args=c("--no-tests"))
shell: Rscript {0}
- name: Test 🧪
if: >
!contains(github.event.commits[0].message, '[skip tests]') && github.event.pull_request.draft == false
run: |
options(crayon.enabled = TRUE)
devtools::test()
shell: Rscript {0}