name: Check for bad links in documentation on: pull_request: paths: # Only run on changes to .md files -- this check is too flakey to run on every PR - '**.md' workflow_dispatch: # Manual schedule: - cron: '0 6 * * *' # Nightly 6AM UTC # This allows a subsequently queued workflow run to interrupt previous runs concurrency: group: ${{ github.workflow }}-${{ github.head_ref || github.run_id}} cancel-in-progress: true defaults: run: # fail-fast using bash -eo pipefail. See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#exit-codes-and-error-action-preference shell: bash permissions: contents: read jobs: markdown-link-check: permissions: contents: read # to read files to check dead links runs-on: ubuntu-latest steps: - name: Harden Runner uses: step-security/harden-runner@63c24ba6bd7ba022e95695ff85de572c04a18142 # v2.7.0 with: egress-policy: audit - uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3 - uses: gaurav-nelson/github-action-markdown-link-check@d53a906aa6b22b8979d33bc86170567e619495ec # v1.0.15 with: use-quiet-mode: 'yes' config-file: .github/workflows/config/markdown-link-check-config.json base-branch: ${{ github.base_ref }}