Skip to main content

check-bibliography-dois.yml

Validate that book and article BibTeX entries have DOIs that resolve and match CrossRef metadata.

Inputs

Input Type Default Description
install-quarto boolean false Install Quarto when setting up R dependencies.
no-metadata-check boolean false Skip the CrossRef metadata comparison.
exclude-keys string '' Space- or comma-separated BibTeX keys to skip.
preinstalled-toolchain boolean false The runner already provides R with pak and has no sudo, as a self-hosted runner does. Skips the R setup steps, so install-quarto has no effect.
runs-on string empty (CI_RUNNER variable, else ubuntu-latest) Runner label for the job. Use a self-hosted label only for a private repository; never for a public one, whose pull requests can run arbitrary code on it (#1167).

Permissions

Only contents: read (the default), so no permissions: block is needed.

Example

# Copy to .github/workflows/check-bibliography-dois.yml in your repo.
name: Check Bibliography DOIs

on:
  push:
    branches:
      - main
  pull_request:
  workflow_dispatch:

jobs:
  check:
    uses: Morrison-Lab/gha/.github/workflows/check-bibliography-dois.yml@v2
    # with:
    #   exclude-keys: vapnik1998   # BibTeX keys without DOIs to skip
    #   install-quarto: false
    #   no-metadata-check: false
    #   preinstalled-toolchain: true           # runner has R with pak and no sudo
    #   runs-on: private-runner               # self-hosted runner label (private repositories only)

See examples/check-bibliography-dois.yml for the full caller stub.