我一直在尝试开始在我的包中使用 github 操作进行持续集成,但是,即使我使用的是 usethis 包的预制功能,它也无法正常工作,并且跑步者会立即停止。
我尝试过以下功能:
usethis::use_github_action_check_standard()
和这个:
usethis::use_github_action_check_release()
但他们都失败了以下消息:
Current runner version: '2.281.1'
Operating System
Virtual Environment
Virtual Environment Provisioner
GITHUB_TOKEN Permissions
Prepare workflow directory
Prepare all required actions
Getting action download info
Download action repository 'actions/checkout@v2' (SHA:5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f)
Download action repository 'r-lib/actions@v1' (SHA:55aea734d73636a0617990c2899c8f86ef8a9877)
Download action repository 'actions/upload-artifact@main' (SHA:11e311c8b504ea40cbed20583a64d75b4735cff3)
Getting action download info
Download action repository 'actions/cache@v2' (SHA:c64c572235d810460d0d6876e9c705ad5002b353)
Error: Can't find 'action.yml', 'action.yaml' or 'Dockerfile' under '/home/runner/work/_actions/r-lib/actions/v1/check-r-package'. Did you forget to run actions/checkout before running your local action?
您可以看到此存储库中的所有内容
但无论如何,这是我用于回购的代码:
# Workflow derived from https://github.com/r-lib/actions/tree/master/examples
# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help
on:
push:
branches: [main]
pull_request:
branches: [main]
name: R-CMD-check
jobs:
R-CMD-check:
runs-on: ${{ matrix.config.os }}
name: ${{ matrix.config.os }} (${{ matrix.config.r }})
strategy:
fail-fast: false
matrix:
config:
- {os: macOS-latest, r: 'release'}
- {os: windows-latest, r: 'release'}
- {os: ubuntu-latest, r: 'devel', http-user-agent: 'release'}
- {os: ubuntu-latest, r: 'release'}
- {os: ubuntu-latest, r: 'oldrel-1'}
env:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
R_KEEP_PKG_SOURCE: yes
steps:
- uses: actions/checkout@v2
- uses: r-lib/actions/setup-pandoc@v1
- uses: r-lib/actions/setup-r@v1
with:
r-version: ${{ matrix.config.r }}
http-user-agent: ${{ matrix.config.http-user-agent }}
use-public-rspm: true
- uses: r-lib/actions/setup-r-dependencies@v1
with:
extra-packages: rcmdcheck
- uses: r-lib/actions/check-r-package@v1
- name: Show testthat output
if: always()
run: find check -name 'testthat.Rout*' -exec cat '{}' \; || true
shell: bash
- name: Upload check results
if: failure()
uses: actions/upload-artifact@main
with:
name: ${{ runner.os }}-r${{ matrix.config.r }}-results
path: check
欢迎任何帮助